在 bash 中,我有一个程序,它列出了要下载的几个文件选项,然后提示用户选择一些。我希望用户能够输入一些内容,例如1-6,8,11-12
下载文件 1、2、3、4、5、6、8、11 和 12。如何for
从这种类型的人性化输入中生成一个数字序列(放入循环中)?
答案1
echo 1-6,8,11-12 | tr -cd "0-9,\n-" | tr "," "\n" | while IFS=- read A B; do eval echo {$A..${B:-$A}}; done | tr "\n" " "
输出:
1 2 3 4 5 6 8 11 12