0

我有一个包含 100 多个文件的目录,我有一个列表,每个文件都有一个编号。我想像这样运行一个for循环

numPairs="21 57 93... etc"
for filename in /directory/;
do
    $filename [numPairs[1]] > newfilename
done;

有没有办法(比如在 js 中,这就是我所熟悉的)调用与 for 循环中调用的文件名相对应的 numPairs 项?还是我会更好地创建另一个包含所有文件名的列表?

4

1 回答 1

1

巴什就像:

numbers="21 57 93"
while IFS=$'\t' read -r num file; do
    echo "num=$num file=$file"
done < <(paste <(printf "%s\n" $numbers) <(printf "%s\n" /directory/*))
于 2018-08-28T22:38:45.667 回答