Удалите папку с тем же именем, что и переменная среды

Я возился с файлом свойств log4j и случайно создал папку со следующим текстом ${foo} но у меня также есть переменная среды с именем foo которая указывает на папку, поэтому, если я сделаю rm -rf "${foo}" он удаляет папку $foo , указывающую на, а не на папку ${foo} . Как я могу указать, чтобы удалить папку в моем текущем каталоге, используя относительный путь, а не удалять папку, на которую указывает переменная среды?

Вот макет, чтобы лучше понять

$foo = /home/user/bar

${foo} = /home/user/${foo}

One Solution collect form web for “Удалите папку с тем же именем, что и переменная среды”

Строковая интерполяция вызывает это. Существует несколько способов выборочного предотвращения этого. У хакеров хакеров bash есть хорошие примеры , хотя особенности могут отличаться, если вы на самом деле не используете bash.

Короче говоря, вы можете предотвратить интерполяцию с одинарными кавычками или вы можете избежать символов.

 [me:~/work]$ export foo=bar [me:~/work]$ echo $foo bar [me:~/work]$ echo "\${foo} is set to ${foo}" ${foo} is set to bar 
  • Случайное удаление каталога / lib в Fedora 15
  • Синтаксис для команды rm. Обеспокоенный использованием опции -r
  • Предоставьте предупреждение, когда что-то будет удалено (от root)
  • rm -fr не работает
  • Удалить файлы, более новые, чем X день и час
  • Что происходит шаг за шагом при использовании «rm -rf directory»?
  • Может ли rm рекурсивно удалять пустые каталоги?
  • mount.cifs не соблюдает права доступа к файлам в Ubuntu 12.04.2 LTS
  • Удалить старый файл с помощью сценария оболочки на FTP-сервере
  • Эффективное удаление большого каталога, содержащего тысячи файлов
  • Создание каталога, защищенного от 'rm -rf'
  • Interesting Posts
    Linux и Unix - лучшая ОС в мире.