分类: LINUX
2013-09-05 17:02:20
seq 是Linux 中一个预设的,一般用作一堆数字的简化写法。
seq 命令它有三个选项-f, --format=FORMAT use printf style floating-point FORMAT (default: %g)-s, --separator=STRING use STRING to separate numbers (default: \n)-w, --equal-width equalize width by padding with leading zeroes-f 最常用 , 例如一次制做 10 个名 dir001 , dir002 .. dir010 的目录,我们可以运行下面的命令便可seq -f 'dir%03g' 1 10 | mkdir或mkdir $(seq -f 'dir%03g' 1 10)它用的是 printf 的格式 , %03g' 代表以三位浮点数,以此方法,如用bash3 的 printf也可作为等价命令printf 'dir%03d\n' {1..10} | mkdir 或 mkdir `printf 'dir%03d ' {1..10}`awk 当然也可以awk 'BEGIN { while (num < 10 ) printf "dir%03d\n", ++num ; exit}' | mkdir这样会比写一个快, 不必写成for dir in 001 002 003 004 005 006 007 008 009 010domkdir dir$done也可用 seq 下载一些用数字的 jpeg , 只要格式有数字顺序便可,尤以一些 xxx site ;)for i in `seq -f '%02g' 1 20`doif ! wget -P $HOME/tmp -c ; thenwget -P $HOME/tmp -c $_fidone-s 选项主要改变输出的分格符, 预设是 \n , 就是 newline如用 -s 便可改变 , 如seq -s ' ' 1 101 2 3 4 5 6 7 8 9 10 , 以空格作为分格