1

Обратите внимание, что я не пытаюсь отключить создание этих файлов. Я хочу держать их рядом до тех пор, пока не буду готов внести изменения в мой контроль версий.

Файлы разбросаны по многим подкаталогам основного каталога с исходным кодом и имеют формат «._». Например, test.txt становится ._test.txt.

Я пробовал эту команду, но она не работает:

rm -rf ._*

Какие-нибудь мысли?

3 ответа3

3

В GNU find есть опция -delete . Если у вас есть GNU find, это должно сработать (и оно должно быть защищено от любых проблем с пробелами и другими забавными символами в именах файлов):

find . -name '._*' -delete

Из документации (info find):

-- Action: -delete
    Delete files or directories; true if removal succeeded.  If the
    removal failed, an error message is issued.

    The use of the `-delete' action on the command line automatically
    turns on the `-depth' option (*note find Expressions::).  This can
    be surprising if you were previously just testing with `-print',
    so it is usually best to remember to use `-depth' explicitly.

    If `-delete' fails, `find''s exit status will be nonzero (when it
    eventually exits).
2

Решил использовать это вместо:

find . -name "._*" -exec rm {} \;

Тем не менее, я хотел бы услышать, есть ли лучший способ сделать это.

0

Хотя их удаление не представляет особой опасности, было бы хорошо убедиться, что вы знаете, что отбрасываете, поскольку на самом деле они не являются ни временными файлами, ни уникальными для TextMate.

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