我需要创建一堆字母排列,然后是数字并将其放入文件中.我有一堆嵌套的for循环,如下所示,然后我将它回显到文件中,但这非常慢,可能是一个小时或更长时间(我懒得想多久).我怎么能更快地做到这一点,我认为缓慢的部分是我打开和关闭文件的方式很多次.
for a in {a..z}
do
for b in {a..z}
do
for c in {a..z}
do
for i in {1..100}
do
echo "$a$b$c$i" >> permutations
done
done
done
done
Run Code Online (Sandbox Code Playgroud)
是的我知道Bash不是最好的语言,但它是我必须使用的.
有任何想法吗?
Bash 大括号扩展可以做到这一点:
echo {a..z}{a..z}{a..z}{1..100} > permutations
Run Code Online (Sandbox Code Playgroud)
如果您想在新行上进行每个排列,可以添加替换:
echo {a..z}{a..z}{a..z}{1..100} | sed -e "s/\ /\n/g" > permutations
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
102 次 |
| 最近记录: |