Я использую эту команду для архивирования всех файлов PHP:

find -name "*.php" | sudo tar -zcpvf my-archive.tar.gz -T -

Он прекрасно работает, за исключением того, что вывод выглядит так:

./file1.php
./file2.php
./file3.php

Вместо:

file1.php
file2.php
file3.php

Как мне нужно изменить мою команду, чтобы ./ не был включен в мой архив?

1 ответ1

0

Самый универсальный инструмент для контроля результатов поиска - это его собственная функция -printf. Имеет последовательность% P, функция которой

  %P     File's  name  with  the name of the command line argument
         under which it was found removed.


find -name '*.php' -printf "%P\n"

такой же как

find ./ -name '*.php' -printf "%P\n"

так ./ удаляется из начала каждой строки

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .