Конечно, есть и другие способы. Они просто не лучшие способы.
Сначала вы можете сохранить ответ в файле, а затем несколько раз просмотреть содержимое файла.
Во-вторых, вы можете передать результаты в функцию bash, например:
callMyScript() {
myScript -c "$1" -h123 -x "$1"
}
вызывается таким образом:
callMyScript "$(awk '{ print $1; }' somefile)"
, который почти точно идентичен простому сохранению в локальной переменной.
Значит, вы заинтересованы в использовании awk? Вы можете сделать так, чтобы awk сгенерировал для вас строку, а bash запустил ее:
eval $(awk '{ printf "myScript -c %s -h123 -x %s\n", $1, $1; }' somefile)
но теперь мы просто глупы, и даже концептуально это ничем не отличается от простого сохранения в переменную.
Мой совет: Используйте переменную.