У меня есть строка:избежать фигурные скобки в UNIX сценарий оболочки
{2013/05/01},{2013/05/02},{2013/05/03}
Я хочу добавить а {в начале и} в конце. Вывод должен быть:
{{2013/05/01},{2013/05/02},{2013/05/03}}
Однако, в моем сценарии оболочки, когда я сцепить фигурные скобки в начале и в конце строки, вывод заключается в следующем:
{2013/05/01} {2013/05/02} {2013/05/03}
Почему это происходит? Как я могу достичь своего результата? Уверен, что это простое решение, но я новичок в Unix, поэтому я бы очень хотел помочь.
тест сценарий:
#!/usr/bin/ksh
valid_data_range="{2013/05/01},{2013/05/02},{2013/05/03}"
finalDates="{"$valid_data_range"}"
print $finalDates
Это само по себе не работает; вы должны предотвратить расширение при использовании переменной. Другими словами, проблема заключается не в присвоении; это команда 'print'. –
Спасибо за вход всем. Поэтому, если я хочу использовать назначенную переменную, например, если я хочу передать финальную строку функции или другому скрипту (возможно, python или perl-скрипту), который будет использовать эту переменную, как я могу это сделать? – axm2064
Используйте '' $ finalDates'' или вариант для этого (например, '' $ {finalDates} "') в любом месте, где вы ссылаетесь на переменную, и не хотите, чтобы расширение скобки происходило. –