Linux - Shell - seq
1. 概述
- 生成序列的命令
- 之前貌似写过 seq 命令, 这次单独拉出来再写一次吧
- 节操先放一放
2. 命令
1. 帮助
-
命令
# 输出我就不打了, # 这个命令可用, 证明组件可用 > seq --help
2. 简单序列
-
命令
# 输出 [1, 3] # 步长为 1 # seq 3 也可以 > seq 1 3 1 2 3
3. 序列步长
-
命令
# 输出 [1, 5] # 步长为 2 > seq 1 2 5 1 3 5
4. 逆序序列
-
命令
# 输出 [1, 3] # 步长为 -1, 导致逆序 > seq 3 -1 1 3 2 1
5. 小数步长
-
命令
> seq 1 0.5 3 1.0 1.5 2.0 2.5 3.0
6. 自定义分隔符
-
命令
> seq -s, 1 3 1,2,3
7. 等宽输出
-
命令
> seq -w 1 10 01 02 03 04 05 06 07 08 09 10
8. 格式化输出
-
命令
> seq -f 'format %g' 1 3 format 1 format 2 format 3
-
其他
- format
- 格式
- 单引号引起来
- 需要包含 %g 类似的格式占位符
- 占位符
-
占位
- 运行后, 会用生成的数字, 替代
-
种类
- a
- 抱歉我也看不懂
- e
- 科学计数法
- f
- 浮点数
- g
- 默认格式, 我也不知道是啥, 但是一般用这个就可以
- a
-
其他修饰(这里只讲%g)
-
整数部分输出宽度: X
- 例如: %2g表示, 输出宽度是 2, 不够则用 空格 填充
- 如果不够, 还是会把值显示出来
-
整数部分填充的 0
- 例如: %02g表示, 输出宽度是 2, 不够用 0 填充
- 只填整数, 小数如果要填 0, 需要用 f%
-
输出显示位.X
- 例如: %2.4g表示, 显示 2 位整数, 2 位 小数
- 感觉有点坑
- 如果小数位数显示不全, 可能会用 e% 的格式来显示
-
右对齐
- 默认就是右对齐
- 例如: %3g 表示, 整数长为 3 位, 右对齐, 不足用 空格 补充
-
左对齐 -
- 例如: %-3g 表示, 左对齐
-
感觉
- 还是个很麻烦的东西,
- 也没有讲太细致,
- 等理解深刻了, 再来补充
-
-
对了, 发现两个 大坑
-
%g 的占位符, 只能出现一次, 出现两次会报错
- 会报错
- 报错
- 会报错
-
vim 的 ex 命令行模式下, % 和 # 需要转义, 否则无法使用
-
例如
:r !seq -f '\#\# \%g' 1 3
-
-
-
- 格式
- format
3. 其他
-
今天先到这吧
- 想不出什么拓展的来了
-
格式化输出这个东西, 其实很不错
- c, java, py 都有类似的东西
- 恰好我都没学好
- 今天先了解些, 以后还得补充
- 这玩意, 我真不知道怎么讲
- 理解起来, 其实本身就有些费劲
- 感觉, 最好还是举几个常用的例子
- 但是我用的也不多
-
ref
尽量尝试解释清楚; 自己校对能力有限, 如果有错误欢迎指出