Ответ 1
Ниже показано, как работает bash 4.1.5:
#!/bin/bash
VERSION_STRING='1.7.3'
echo zip -r foo foo.$VERSION_STRING.zip
Я добавил echo
, чтобы увидеть фактическую команду, а не запустить ее. script выводит
zip -r foo foo.1.7.3.zip
В bash script, как я могу использовать переменную для создания специально названного zipped файла? Например, я хотел бы сделать что-то вроде:
VERSION_STRING='1.7.3'
zip -r foo.$VERSION_STRING foo
В идеале я получаю файл с именем foo.1.7.3.zip
Кажется, у меня две проблемы:
$VERSION_STRING
как null или empty.
после foo
также, кажется, удаляет егоНиже показано, как работает bash 4.1.5:
#!/bin/bash
VERSION_STRING='1.7.3'
echo zip -r foo foo.$VERSION_STRING.zip
Я добавил echo
, чтобы увидеть фактическую команду, а не запустить ее. script выводит
zip -r foo foo.1.7.3.zip
вы можете использовать ${VERSION_STRING}
, чтобы четко обернуть имя переменной
Я думаю, что у вас есть ваши почтовые входы назад. Для меня следующая команда:
zip -r foo.${VERSION_STRING}.zip foo
создает действительный zip файл. У вашей команды нет (по крайней мере, моей версии zip).