Для этого можно использовать косвенные ссылки на bash :
AR1_p1=22
AR1_p2=23
AR1_p3=24
AR1_p4=25
for i in 1 2 3 4
do
VARNAME="AR1_p${i}"
echo "${!VARNAME}"
done
Используйте функцию вместо псевдонима, и в этом случае вы можете ссылаться на позиционные параметры, такие как $1
и т. д.
take_row () {
local nrow="$1"
cat prova.csv_001.txt | awk -v nrow="${nrow}" '{if (NR==nrow) print}'
}
В этом конкретном случае вы также можете обратиться к бесполезному использованию кота:
take_row () {
local nrow=$1
awk -v nrow="${nrow}" '{if (NR==nrow) print}' prova.csv_001.txt
}
... и сделать его еще короче, удалив ненужный код:
take_row () {
local nrow=$1
awk -v nrow="${nrow}" 'NR==nrow' prova.csv_001.txt
}