Linux(Centos 7.6)命令详解:tac

1.命令作用

将每个文件写入标准输出,最后一行先写(Write each FILE to standard output, last line first);

以相反的顺序显示文件内容,逐行输出,与cat命令功能相反,tac是反向读取文件。

2.命令语法

Usage: tac [OPTION]... [FILE]...

3.参数详解

OPTION:

  • -b, --befores,将分隔符附加在之前而不是之后
  • -r, --regex,将分隔符解释为正则表达式
  • -s, --separator=STRING,使用STRING作为分隔符而不是换行符

4.常用用例

4.1.与cat相反输出

[root@localhost Desktop]# cat fff 
iiiiii:
oooooo:
pppppp:
[root@localhost Desktop]# tac fff
pppppp:
oooooo:
iiiiii:

4.2.指定分隔符相反输出

[root@localhost Desktop]# cat ttt
aaa:bbb:ccc:
[root@localhost Desktop]# truncate -s -1 ttt   ## 删除文件最后一个字符(换行符)
[root@localhost Desktop]# cat ttt 
aaa:bbb:ccc:[root@localhost Desktop]#
[root@localhost Desktop]# 
[root@localhost Desktop]# cat ttt 
aaa:bbb:ccc:[root@localhost Desktop]# 
[root@localhost Desktop]# 
[root@localhost Desktop]# tac -s : ttt
ccc:bbb:aaa:[root@localhost Desktop]# 

4.3.-r正则使用

[root@localhost Desktop]# cat iii 
abcdef
[root@localhost Desktop]# 
[root@localhost Desktop]# tac -r -s 'x\|[^x]' iii   ## 一个接着一个字符的反转一个文件

fedcba[root@localhost Desktop]# 

 4.4.-b参数使用

## 1.-b参数
[root@localhost Desktop]# cat fff 
iiiiii:
oooooo:
pppppp:
llllll:
[root@localhost Desktop]# tac -b fff 


llllll:
pppppp:
oooooo:iiiiii:[root@localhost Desktop]#


## 2.-b参数详解
## seq 1 3 相当于'1\n2\n3\n'
## tac将'1\n2\n3\n'转为'3\n2\n1\n',-b将'3\n2\n1\n'转为'\n\n3\n21',
## -b相当于将分隔符(换行符\n)全部向前移动2位
[root@localhost Desktop]# seq 1 3 |tac -b


3
21[root@localhost Desktop]#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值