Как удалить файл с помощью терминала из корзины в Mac OS X?

14611
Sagar R. Kothari

Из предыдущего вопроса я применил следующую команду к моему файлу.

sudo chflags -R nouchg TopSites.plist sudo chmod 444 TopSites.plist 

Теперь, когда файл заблокирован, я не знаю, как его удалить.

В настоящее время у меня есть файл в моей корзине.

Что делает sudo? И где я могу найти больше информации об этом?
Где хранится Корзина в Mac OS X?
Как мне удалить этот файл?

3

3 ответа на вопрос

4
alexus

sudoвыполняет команду от имени другого пользователя. По умолчанию (как в этом случае) пользователь является суперпользователем root, который может делать практически все, что угодно. Мусор находится в ~/.Trash. Вы можете удалить весь мусор, выполнив:

rm -rf ~/.Trash/* 
4
Chealion

Судо

sudoрасшифровывается как super user do, вы можете узнать больше об этом с помощью 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) и force ( -f). Вы можете узнать больше о rmбеге man rm.

2
Richard Hoskins

Вы можете форсировать удаление, удерживая клавишу «Option» во время очистки корзины.

sudo позволяет запускать команды от имени другого пользователя. Если пользователь не указан, используется root.

chflags изменяет файл или папку "flags". -R переключатель делает команду рекурсивной, то есть она будет применяться ко всем файлам во всех вложенных папках. uchg делает файл неизменным, nouchg очищает флаг неизменяемости.

chmod изменяет права доступа к файлу или папке. 444 - это восьмеричная битовая маска прав доступа к файлу, доступная только для чтения всем, включая владельца. Смотрите этот вопрос для объяснения восьмеричных масок и chmod.

Ввод man 'имя команды' в терминале даст вам полное описание всех этих команд.

это не совсем терминальный способ делать вещи ... alexus 15 лет назад 0
@alexus - Ричард прав. Любой, как я хотел очистить мусор. Вы оба правы. Большое спасибо за помощь. Sagar R. Kothari 15 лет назад 0