У меня есть одна переменная, содержимое которой выглядит следующим образом:
echo $var1
"string1 string2" "string3 string4" "string5 string6"
Я хотел бы, чтобы "string1 string2" и т. Д. Были бы видны как одна строка, в настоящее время, если я печатаю первое поле с помощью awk, я получаю'' word1 'как первое поле, второе поле -' word2 '' и т. д.
Когда я использую эту переменную в цикле for, она не работает, потому что цикл for не видит строки под кавычкамикак одна строка.
Например, я попытался:
for i in "${var1[@]}";do command to run program with arguments "$i";done
- это не работает, потому что программа запускается с аргументом "" строка1, в то время как она должна запускаться с ""строка1 строка2 "аргумент.
Кроме того, хотя я создаю другую переменную $ var2, например:
var2=("string1 string2" "string3 string4")
, и запускаю ее в цикле выше, она работает.
Мой вопрос: есть ли способ отформатировать $ var1 в приведенных выше примерах, чтобы он выглядел как $ var2, чтобы он работал? Спасибо.
Примечание: $ var1 - это результат программы, которая выбираетназвания услуг.