Основной вопрос: с помощью переменного контента в качестве имени каталога в Linux

голоса
1

Я хочу, чтобы новый каталог с именем каждого архива в настоящее время существует в каталоге конкретного, в другом. Я написал «для цикла» для этой цели:

files=NL*.zip
for a in $files; do 
b=echo $a; 
sudo mkdir '/home/shokufeh/Desktop/normals/T1/${b}';
done

но он создает каталог с именем $ {B} для первого раунда и делают ошибки на последующие. Не могли бы вы сказать мне, что я должен делать?

Задан 13/01/2020 в 23:50
источник пользователем
На других языках...                            


1 ответов

голоса
1

Вы помещаете переменную в простых кавычках, там передний «$ {Ь}» никогда не будет истолковано. Попробуй это:

for a in NL*.zip; do 
  sudo mkdir "/home/shokufeh/Desktop/normals/T1/${a}";
done

Нет необходимости в переменных $ файлов и $ б.

Подводя итог, скажем var=3,

  • echo "$var" будет отображаться 3
  • echo '$var' будет отображаться $var
  • echo "'$var'" будет отображаться '3'
  • echo '"$var"' будет отображаться "$var"

Надеюсь, что это имеет смысл. Цитаты действуют как скобки и скобки.

Ответил 13/01/2020 в 23:52
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more