(28)字符截取命令cut、printf

2020-09-02 09:23:54 浏览数 (2)

想和我一起交流沟通,获取更多内容欢迎关注微信公众号:生信real

一、cut命令

格式:

代码语言:javascript复制
[root@localhost~]#cut [选项] 文件
选项:-f 列号  提取第几列
     -d 分隔符 按照指定分隔符分割列

接下来我们以student.txt进行演示

注意:列与列之间的空白字段不是空格,是Tab键

例1.cut -f

①提取student.txt第二列

提取student.txt第二、四列

例2.cut -d

①cut默认的分隔符是Tab,可以用-d选项来指定分隔符(图片只截取了部分)

例3.cut一般情况下都是和grep同时使用来发挥作用,我们来看下面这个例子:

假设我批量添加100个用户后,我想提取所有普通用户的用户名,该怎么做呢?

PS:cut的局限性:当文件的分隔符是空格,不是Tab,我们就无法利用cut进行提取了,此时我们需要用到后面将要讲到的awk命令来进行提取。

二、printf命令

格式:

代码语言:javascript复制
[root@localhost~]#printf ‘输出类型输出格式’ 输出内容
[root@localhost~]#printf “输出类型输出格式” 输出内容
#单引号和双引号都支持

输出类型:

%ns

输出字符串。n是数字指代输出几个字符。

%ni

输出整数。n是数字指代输出几个数字。

%m.nf

输出浮点数。M和n是数字,指代输出的整数位数和小数位数。如%8.2f代表共输出8位数,其中2位是小数,6位是整数。

输出格式:

a

输出警告声音

b

输出退格键,也就是Backspace键

f

清除屏幕

n

换行

r

回车,也就是Enter键

t

水平输出退格键,也就是Tab键

v

垂直输出退格键,也就是Tab键

例1.printf %s 1 2 3 4 5 6

例2.printf %s %s %s 1 2 3 4 5 6

例3.printf ‘%s %s %s’ 1 2 3 4 5 6

例4.printf ‘%s %s %sn’ 1 2 3 4 5 6

三个%s表示三个为一组,两个%s表示两个为一组

例5.printf与cat命令结合使用的时候,需要用$()把cat命令扩起来,使用这种命令赋予变量的方式,才能正确输出文件内容。但是具体格式还得用%st 或者%sn控制。

#不调整输出格式

#调整输出格式

END

0 人点赞