linux文本格式化输出,Linux之文本格式化输出

文本格式化输出

一、输出格式化命令printf

格式替换符

选项

功能描述

%s

字符串

%f

浮点格式

%c

ASCII字符,即显示对应参数的第一个字符

%d,%i

十进制整数

%o

八进制值

%u

不带正负号的十进制值

%x

十六进制值(a-f)

%X

十六进制值(A-F)

%%

表示%本身

常用转义字符

选项

功能描述

b

后退

f

换页

n

换行

r回车

t

水平制表符

v

垂直制表符

表示本身

二、简单文本格式化命令fmt

fmt命令用于编排文本文件。fmt指令会从指定的文件里读取内容,将其依照指定格式重新编排后,输出到标准输出设备。若指定的文件名为”-“,则fmt指令会从标准输入设备读取数据。

例如:

[root@localhost usr]# cat app.json { "pages":[ "pages/aboutme/aboutme", "pages/index/index", "pages/logs/logs" ], "window":{ "backgroundTextStyle":"light", "navigationBarBackgroundColor": "#0ff", "navigationBarTitleText": "第一个微信小程序" } } // 重新编排文件内容 [root@localhost usr]# fmt app.json { "pages":[ "pages/logs/logs"x",outme", "window":{ "navigationBarBackgroundColor":", "navigationBarTitleText": "第一个微信小程序" } }

三、行标号命令nl

nl命令在linux系统中用来计算文件中行号。nl 可以将输出的文件内容自动的加上行号。

[root@localhost usr]# nl a.txt 1lzp 2is a chinese man. 3jaskson 4is a usa man.

四、grep命令

grep [选项] [范本样式] [文件或目录…] 例子

当前目录下查找以file前缀的文件中含有lzp的行。

[root@localhost local]# ls android1 etc file2 include lib libexec sbin src afile bin file1 games jdk lib64 mysql share tomcat [root@localhost local]# grep lzp file* file1:lzp file2:lzp

五、管道

多命令执行符

格式

作用

;

命令1;命令2

多个命令顺序执行,命令之间没有任何逻辑联系

&&

命令1&&命令2

逻辑与;当命令1执行正确,则命令2才会执行;当命令2执行不正确,则命令2不会执行

||

命令1 || 命令2

逻辑或;当命令1执行不正确,则命令2才会执行当命令2执行正确,则命令2不会执行

例子:

同时执行多条命令

[root@localhost ~]# date;ls;cd /usr;date;ls Wed May 8 07:49:28 PDT 2019 anaconda-ks.cfg Documents install.log Music Public Videos Desktop Downloads install.log.syslog Pictures Templates Wed May 8 07:49:28 PDT 2019 bin etc include lib libexec sbin src dzqc games java lib64 local share tmp

如果其中一条命名发生错误,后面的命令依旧会执行。如date1命令错误,ls命令仍旧执行。

例2:同时执行ls和echo命令

[root@localhost usr]# ls && echo 'yes' bin etc include lib libexec sbin src dzqc games java lib64 local share tmp yes [root@localhost usr]# ls1 && echo yes bash: ls1: command not found

逻辑与表示命令ls和命令echo同时成功时同时或失败

实例3:ls和echo命令只执行其中一个。

[root@localhost usr]# ls || echo yes // 执行的ls,没有执行echo bin etc include lib libexec sbin src dzqc games java lib64 local share tmp [root@localhost usr]# ls1 || echo yes // 执行echo,没有执行ls1 bash: ls1: command not found yes

实例4:判断ls命令是否正确执行,如果正确执行打印success,不正确执行打印fail

[root@localhost usr]# date && echo success || echo fail Wed May 8 08:18:15 PDT 2019 success [root@localhost usr]# date1 && echo success || echo fail bash: date1: command not found fail

实例5:判断命令的执行结果

[root@localhost usr]# date1 || echo no && echo yes

管道符

语法:

命令1 | 命令2

命令1的正确输出作为命令2的操作对象

实例1:命令ls显示/etc目录下的文件,并将结果重定向到abc.txt文件中。再用more显示。

[root@localhost etc]# ls -al>abc.txt [root@localhost etc]# more abc.txt

上面的功能能使用一条命令吗?

[root@localhost etc]# ls /etc | more

将netstat命令的结果发到grep ,显示包含udp的行。

[root@localhost etc]# netstat -lntup | grep udp udp 0 0 0.0.0.0:631 0.0.0.0:* 1803/cupsd udp 0 0 0.0.0.0:68 0.0.0.0:* 2864/dhclient

将netstat命令的结果发到grep ,显示包含udp的行的数量。

[root@localhost etc]# netstat -lntup | grep udp | wc -l 2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值