| 关键词: nbsp 输出 数字 一下 位数 尾数 宽度 脚本 空格 但是 |
脚本输出1到15不难,比如你写一个for循环:注意一下{}的用法这样就可以输出1到15了,但是就算你把脚本中的1改成01,也输出不了01 02这样的数字,才开始我就在想可不可以加个判断,如果数字小于10,那在数字前加0,于是乎,这个脚本产生了:执行一下脚本,看一下输出:挺自豪的,但是有一些麻烦,突然想起了printf的用法,printf可以指定输出格式,如%d这样,我们可以输出宽度,但输出不能满足输出宽度的时候,默认的是用空格补全,但是我们可以加一下控制,让不满足宽度的输出空余位数用0补全,如:输出如下:但是有个更好的命令seq:用于产生从某个数到另外一个数之间的所有整数先看一下seq的基本用法:Seq [选项] 尾数 如果只指定位数则默认从1开始Seq [选项] 首数 尾数Seq [选项] 首数 增量 尾数 中间是定增量,事例如下:在看一下选项:-f, --format=格式 使用printf 样式的浮点格式% 后面指定数字的位数 默认是"%g", 注意-f是浮点数格式,%后不能用d(整数)"%3g"那么数字位数不足部分是空格#sed -f"%02g" 1 2 这样的话数字位数不足部分是0也可以在%前加字符,如:sed -f"aa%02g" 1 3 这样就输出aa01 aa02 -s, --separator=字符串 使用指定字符串分隔数字(默认使用:\n)指定输出数字之间的分隔符,默认是换行,我们可以指定用空格当作换行符如:-w, --equal-width 在列前添加0 使得宽度相同看到-w这个参数是我们需要的,自动加0 |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|