企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### seq命令详解 ``` # 连续输出20到30 [root@ncayu8847 test_hy]# seq 20 30 20 21 22 23 24 25 26 27 28 29 30 # seq命令还可以实现步进输出 ,比如从20 开始,每次步进 3 ,最大到50 [root@ncayu8847 test_hy]# seq 20 3 50 20 23 26 29 32 35 38 41 44 47 50 ``` seq命令还有一些常用选项: * \-s 指定输出的分隔符,默认为\\n,即默认为回车换行 * \-w 指定为定宽输出,不能和-f一起用 * \-f 按照指定的格式输出,不能和-w一起使用 ``` -s选项:指定分隔符 # 指定减号为分隔符 [root@ncayu8847 test_hy]# seq -s - 20 3 50 20-23-26-29-32-35-38-41-44-47-50 # 使用制表符(\t)作为分隔符 [root@ncayu8847 test_hy]# seq -s"`echo -e "\t"`" 20 25 20 21 22 23 24 25 注意:示例中使用了命令替换,也就是说,先使用echo命令输出制表符,然后用输出的制表符作为seq命令输出数字的连接符。 -w 选项:指定为定宽输出,例如下图,最大值为11,是两位数,那么不到两位的数前面自动用0补全,当然,如果指定的位数最大为三位数字,那么一位数和两位数前面的位数都会用0补全,也就是说,以最大值的位数为标准宽度,不足标准宽度的数字将会用0补位。 # 6到12 [root@ncayu8847 test_hy]# seq -w 6 12 06 07 08 09 10 11 12 # 98到102 [root@ncayu8847 test_hy]# seq -w 98 102 098 099 100 101 102 -f选项:按照指定的格式输出生成的数字,在没有使用-f选项指定格式时,默认格式为%g,可以理解为使用-f 指定模式为"%g",跟不指定格式没有任何区别. [root@ncayu8847 test_hy]# seq 20 25 20 21 22 23 24 25 [root@ncayu8847 test_hy]# seq -f '%g' 20 25 20 21 22 23 24 25 # "%3g"这种格式表示指定"位宽"为三位,那么数字位数不足部分用空格补位 [root@ncayu8847 test_hy]# seq -f '%02g' 20 25 20 21 22 23 24 25 [root@ncayu8847 test_hy]# seq -f '%03g' 20 25 020 021 022 023 024 025 [root@ncayu8847 test_hy]# seq -f '%04g' 20 25 0020 0021 0022 0023 0024 0025 [root@ncayu8847 test_hy]# seq -f '%05g' 20 25 00020 00021 00022 00023 00024 00025 上述例子中的格式中,都包含一个'%',其实 % 前面还可以指定字符串 # 例如在屏幕上打印5个名为dir1 , dir2 .. dir5 的字符串,这时候就用到这种写法 [root@ncayu8847 test_hy]# seq -f 'dir%g' 1 5 dir1 dir2 dir3 dir4 dir5 所以,结合上述示例中的seq命令的特性,再结合其他命令,就能为我们带来许多方便。 例如一次性创建10个名为dir001 , dir002 .. dir010 的目录,这时候就用到这种写法。 mkdir $(seq -f 'dir%03g' 1 10) 或者如下命令,与上述命令的效果相同。 seq -f 'dir%03g' 1 5 | xargs mkdir ```