awk
Даже если есть возможность прочитать из файла и составить команду, которую вы хотите в цикле, есть команда, которую вы можете найти более удобной: awk .
Если имя файла не содержит пробелов, вы можете использовать этот простой синтаксис для создания нужной команды, а затем перенаправить (|) этот вывод в оболочку (sh), которая его выполнит.
С $1 долларом Вы берете 1-ую колонку, с $2 вторым и так далее ...
awk '{print "wget -O "$2,$1}' links.txt | sh
Если в именах есть пробелы, вам нужно больше заниматься в тренажерном зале:
awk -F $'\t' '{print "wget -O\""$2"\" " $1}' links.txt | sh
Здесь вы должны указать, что разделитель полей -F является вкладкой (-F $'\t'), и вы должны напечатать " до и после имени файла. Поскольку вы находитесь внутри строки, вам нужно убежать [ 2 ] из них
echo "Those are double quote\"" .
Попробуйте эту команду без перенаправления (то есть без | sh ), чтобы иметь возможность управлять выводом, затем выполните ее, когда вы уверены ...
Используйте man awk чтобы получить дополнительную помощь.