Як видалити наступний каталог?
Я набрав:
rmdir lampp
Ця помилка з'являється:
rmdir: failed to remove `lampp': Directory not empty
Чи є команда видалити всі файли в каталозі та видалити папку каталогу?
rm -r lampp
це зроблять.
Як видалити наступний каталог?
Я набрав:
rmdir lampp
Ця помилка з'являється:
rmdir: failed to remove `lampp': Directory not empty
Чи є команда видалити всі файли в каталозі та видалити папку каталогу?
rm -r lampp
це зроблять.
Відповіді:
rm -rf lampp
Він видаляє всі файли та папки, що містяться в lampp
каталозі.
Додайте sudo
на початку команди:
sudo rm -rf folderName
В іншому випадку без sudo
повернення вам буде відмовлено в дозволі. І це гарна практика, намагаючись не використовувати -f
під час видалення каталогу:
sudo rm -r folderName
Примітка. Це передбачає, що ви вже на тому самому рівні папки, яку ви хочете видалити в терміналі, якщо ні:
sudo rm -r /path/to/folderName
FYI: Ви можете використовувати літери -f
, -r
, -v
:
-f
= ігнорувати неіснуючі файли, ніколи не підказуючи-r
= видаляти каталоги та їх вміст рекурсивно-v
= пояснити, що робиться--no-preserve-root
теж випадково не введете текст .
rm -R lampp
Однак вам потрібно бути обережними з такою рекурсивною командою, оскільки легко випадково видалити набагато більше, ніж ви задумали.
Доцільно завжди двічі перевірити, в якому каталозі ви перебуваєте, і чи правильно ви ввели команду, перш ніж натиснути клавішу Enter.
Більш безпечна версія
rm -R -i lampp
Додавання -i
робить це трохи безпечнішим, оскільки підкаже вам про кожне видалення. Однак якщо ви видаляєте багато файлів, це не буде дуже практичним. Тим не менш, ви можете спробувати це спочатку.
Примітка про -f
варіант:
Багато людей пропонують використовувати -f
(поєднуючи його в -Rf
або -rf
), стверджуючи, що він позбавляється від дратівливих підказок. Однак у звичайних випадках він вам не потрібен, а його використання пригнічує деякі проблеми, про які ви, мабуть , хочете знати. Використовуючи його, ви не будете попереджені, якщо ваші аргументи надають неіснуючий каталог або файл (и): rm просто мовчки не зможе нічого видалити. Як правило, спробуйте спочатку без цього -f
: якщо є проблеми з вашими аргументами, то ви помітите. Якщо ви почнете отримувати занадто багато підказок про файли без доступу до запису, ви можете спробувати це-f
. Крім того, запустіть команду від користувача (або суперкористувача, що використовує sudo), який має повні дозволи на файли та каталоги, які ви видаляєте, щоб запобігти цим підказкам в першу чергу.
-r
можуть бути використані і мають такий же ефект. Я, як правило, використовую лише великі регістри, -R
оскільки це відповідає іншим командам, які я використовую, наприклад, grep
та chmod
, деякі з яких підтримують лише великі регістри.
rm -ir FOLDER
.
Існує маса способів видалення каталогу через режим CLI. Це залежить від того, яким чином вам подобається.
rm -rvf /path/to/directory
-r
= видаляти каталоги та їх вміст рекурсивно-v
= поясніть, що робиться-f
= ігноруйте неіснуючі файли, ніколи не підказуйтеЯкщо ви новачок в Linux, використовуйте довідкові сторінки команд ( man rm
) для більшої опції та більшої точності.
У мене були проблеми з цим сьогодні, але я подолав це з судо.
Caveat: Будьте впевнені, що хочете видалити всю справу, перш ніж використовувати команду нижче.
$ sudo rm -R [Directory name]
Я успішно зробив це сьогодні і видалив багато непорожніх каталогів, за якими я підтвердив, що не хочу / не потребую.
Я використовую 14,04 LTS
До речі, я особисто хотів видалити каталог, що містить захищений від запису файл / s (.git та підкаталоги), і, врешті-решт, зрозумів, що мені також потрібно стати супер користувачем, щоб успішно видалити ці файли. Ось що я зробив:
#became super user
sudo su -
#deleted contents of, and then the directory, harvey_snake/
rm -R harvey_snake/
sudo su
тут потрібно . Просто додайте rm
команду до sudo
. Для безпеки - це добра практика (на думку прихильників судо) не залишатися в кореневому підказці, коли це не потрібно.
sudo rm -r
.
/directory_name
), щоб не було сумнівів у тому, який каталог ви видаляєте.