В сценарии bash у меня есть три переменные, которые содержат несколько строк одинаковой длины.Bash script «concatenate» multi-lined variables
Например:
$a
one
two
three
$b
dog
cow
fish
$c
blue
red
green
Каким образом я мог бы эхо вывод в том же формате:
onedogblue
twocowred
threefishgreen
Я попробовал цикл из цикла по каждой переменной, и повторяя каждую строку, но не получил желаемого результата. Любой совет?
РЕДАКТИРОВАНИЕ БОЛЬШЕ ТОЧНОСТИ Так что мой сценарий будет работать с текстовым файлом в качестве аргумента (./script.sh текстового файла) У меня есть три переменных с одинаковым содержанием этого переменным:
#!/bin/sh
x=`awk 'NR>1{print $1}' $1 | tr '[:upper:]' '[:lower:]'`
Я манипулирую тем же текстовым файлом из аргумента команды, чтобы получить разные части файла. В конечном итоге вы хотите «вставить» их вместе в этом формате «$ x»: «$ y» «$ z. Я знаю, что есть, вероятно, более разумные способы обработки текстового файла в желаемом формате, но я хотел бы найти, такой способ отформатировать его в пути, перечисленный выше
Если вы делаете 'cat $ a', то' $ a' - это переменная, которая расширяет (не имеет значения) имя файла, который печатается стандартным образом. Это не то же самое, что содержимое переменной. –
Можете ли вы сделать echo $ a –
@JoseMartinez с цитатами пожалуйста: 'echo '$ a" '. –