Очень способный молодой человек установил Ubuntu на мой Mac, но я не знаю, как он это сделал.
Когда я копирую файлы на свой MacBook Pro с другого «обычного» ПК с Ubuntu, я нахожу много дубликатов файлов с префиксом ._
(подчеркивание точки).
При поиске в Интернете я обнаружил, что все ответы на этот вопрос связаны с OSX.
Не будучи очень техничным, я был бы признателен, если бы кто-нибудь отправил мне команду терминала, чтобы стереть все файлы на моем Ubuntu-Mac с префиксом ._
... если, конечно, это не приведет к катастрофическим последствиям!
Вы можете удалить файлы с помощью rm
, но, как вы уже догадались, эта команда имеет свои риски. Для предотвращения бедствий есть пакет safe-rm
, поэтому я рекомендую сначала установить его с помощью:
sudo apt install safe-rm
. Он автоматически не позволит вам удалить что-либо важное для системы.
Теперь для вывода списка всех файлов, начинающихся с ._
, в текущем каталоге выполните:
ls -1 ._*
Чтобы удалить все файлы, начиная с ._
, в текущем каталоге , запрашивая каждый отдельный do:
rm -i ._*
Удалить все файлы, начиная с ._
, в текущем каталоге , не спрашивая - Внимание! - do:
rm ._*
Чтобы сделать это рекурсивно, вы можете использовать функцию extglob
, которую необходимо включить с помощью shopt -s extglob
(один раз на окно терминала, где вы хотите его использовать). После этого вы можете выполнить
rm -i **/._*
, и он удалит каждый файл ._
в текущем каталоге, а также его подкаталоги (и запросит каждый из них, как вы уже догадались).
Звездочка *
является специальным символом оболочки и просто соответствует любой строке, поэтому ._*
соответствует любому файлу, начинающемуся с ._
. Шаблон globstar **
, за которым следует /
, соответствует каталогам и подкаталогам и нуждается в опции extglob
, которая по умолчанию не включена.