Как удалить файл с помощью терминала из корзины в Mac OS X?
Из предыдущего вопроса я применил следующую команду к моему файлу.
sudo chflags -R nouchg TopSites.plist
sudo chmod 444 TopSites.plist
Теперь, когда файл заблокирован, я не знаю, как его удалить.
В настоящее время у меня есть файл в моей корзине.
Что значит sudo
делать? И где я могу найти больше информации об этом?
Где хранится Корзина в Mac OS X?
Как мне удалить этот файл?
3 ответа
sudo
выполняет команду от имени другого пользователя. По умолчанию (как в этом случае) пользователь является суперпользователем root, который может делать практически все, что угодно. Мусор находится в ~/.Trash
, Вы можете удалить весь мусор, выполнив:
rm -rf ~/.Trash/*
Судо
sudo
означает супер пользователя, вы можете узнать больше об этом, используя man sudo
в Терминале. Суть в том, что вы можете временно выполнить команду от имени пользователя root, что означает, что вы обладаете полными привилегиями - когда у вас запрашивают пароль в приложениях для выполнения определенных действий (например, установки), это GUI-эквивалент использования sudo.
Место для мусора
Вашу корзину для вашего загрузочного диска можно найти по адресу ~/.Trash/
тогда как для внешних жестких дисков его можно найти на /Volumes/NAME_OF_EXTERNAL/.Trashes/USER_ID/
где USER_ID - ваш идентификатор пользователя.
Удаление файлов
У вас есть пара опций для удаления файла: если вы удерживаете Option, когда вы очищаете корзину, вы можете принудительно очистить корзину, которая удалит заблокированные файлы, такие как ваши.
В качестве альтернативы вы можете использовать Терминал для запуска rm
команда (расшифровывается как удалить). rm
Команда удалит файл (без мусора, он просто исчез, так что будьте осторожны при его использовании). Так например rm -rf ~/.Trash/*
сотрет каждый файл в вашей корзине. Если ты побежал sudo rm -rf ~/.Trash/*
это сделало бы это с привилегиями суперпользователя.
Флаги в rm
командный стенд для рекурсивно (-r
) и сила (-f
). Вы можете найти больше о rm
запустив man rm
,
Вы можете форсировать удаление, удерживая клавишу "Option" во время очистки корзины.
sudo позволяет запускать команды от имени другого пользователя. Если пользователь не указан, используется root.
chflags изменяет файл или папку "flags". Ключ -R делает команду рекурсивной, т.е. она применяется ко всем файлам во всех подпапках. uchg делает файл неизменным, nouchg очищает флаг неизменяемости.
chmod изменяет права доступа к файлу или папке. 444 - это восьмеричная битовая маска прав доступа для файла, доступная только всем, включая владельца. Смотрите этот вопрос для объяснения восьмеричных масок и chmod.
Ввод man 'имя команды' в терминале даст вам полное описание всех этих команд.