LINUX.ORG.RU

Нет, не одинаковый.

anonymous ()

cd выполни куда-то из $HOME, тогда будет нормально работать — каждый день использую 2 конструкцию (только без судо, у меня же su -)

anonymous ()
Ответ на: комментарий от Vovanano

Нет, из хомяка тоже не одинаковый.

anonymous ()

Перед запуском команды shell производит замену некоторых специальных символов. В данном случае ~ заменится на путь к домашнему каталогу текущего пользователя, а * заменится на список имён нескрытых файлов в текущем каталоге.

Т.е. предположим, мы запускаем команду от пользователя test, при этом текущий каталог /home/test/Desktop и в нём есть 4 файла: file1, file2, file3, .DS_Store

test@localhost /home/test/Desktop $ rm -r ~ # аналогично
test@localhost /home/test/Desktop $ rm -r /home/test

test@localhost /home/test/Desktop $ rm -r * # аналогично
test@localhost /home/test/Desktop $ rm -r file1 file2 file3

Первая команда удалит каталог /home/test.

Вторая команда удалит 3 файла из каталога /home/test/Desktop (скрытый файл останется).

Legioner ★★★★★ ()
Ответ на: комментарий от Legioner

А у меня, в общем, лежала директория с названием ~ в домашней папке, и я решил её удалить. Угадай, что произошло.

letni ()
Ответ на: комментарий от letni

ну может хоть теперь ты научишься экранированию и заключать имена файлов в кавычки

anonymous ()
Ответ на: комментарий от letni

В следующий раз используй для таких целей rm -- ~

Deleted ()
Ответ на: комментарий от letni

Не уверен, что работает на всех версиях баша.

Deleted ()
Ответ на: комментарий от Deleted

чтобы баш раскрыл это в rm -- /home/asdf?

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.