Bash csh Перебрать 2 списка
В csh или любом другом дружественном для Mac языке сценариев я хотел бы запустить некоторую форму цикла, который читает 2 списка. Нужна небольшая помощь с синтаксисом.
Например:
variable1 = (1, 2, 3, 4, ...)
variable2 = (one, two, three, four, ...)
Foreach number ($variable1)
echo "{$variable1} equals {$variable2}"
end
Когда я пытаюсь, второй variable2
не распознается в цикле.
2 ответа
#!/bin/bash
variable1=(1 2 3 4)
variable2=(one two three four)
for ((i=0;i<${#variable1[@]};i++)); do
echo "${variable1[$i]} equals ${variable2[$i]}"
done
Выход:
1 равно одному 2 равно двум 3 равно трем 4 равно четырем
Пожалуйста, попробуйте это:
#! /bin/csh
set variable1 = (1 2 3 4)
set variable2 = (one two three four)
set i = 1
foreach x ( $variable1 )
echo "$x equals $variable2[$i]"
@ i = $i + 1
end
Результат:
1 equals one
2 equals two
3 equals three
4 equals four