博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux shell 脚本攻略学习4
阅读量:6300 次
发布时间:2019-06-22

本文共 3030 字,大约阅读时间需要 10 分钟。

1.cat命令详解

cat 是concatnate(拼接)的简写.

语法:

cat file1 file2 file3 ....

作用:将文件内容拼接在一起进行输出

具体应用:

1).压缩空白行

加上-s参数压缩连续的空白行

amosli@amosli-pc:~/learn$ cat mutil_blank.txt thisis blank!amosli@amosli-pc:~/learn$ cat -s mutil_blank.txt #压缩连续的空白行thisis blank!

移除所有的空白行,

tr -s "\n"
amosli@amosli-pc:~/learn$ cat mutil_blank.txt | tr -s "\n"thisis blank!

2).将制表符显示为^|

-T 参数

amosli@amosli-pc:~/learn$ cat file.py def function():    var = 5;        next = 6;    third = 7;amosli@amosli-pc:~/learn$ cat -T file.py # 加上参数-T,即可将制表符标示出来!def function():^Ivar = 5;^I^Inext = 6;^Ithird = 7;

3).显示行号

-n参数

amosli@amosli-pc:~/learn$ cat -n file.py #加上参数-n即可显示行号     1    def function():     2        var = 5;     3            next = 6;     4        third = 7;     5

 

2.录制与回放终端会话

amosli@amosli-pc:~/learn$ script -t 2> timing.log -a output.session#开始录制Script started, file is output.sessionamosli@amosli-pc:~/learn$ hello1No command 'hello1' found, did you mean: Command 'hello' from package 'hello-debhelper' (main) Command 'hello' from package 'hello' (main)hello1: command not foundamosli@amosli-pc:~/learn$ whoamosli   tty7         2013-12-19 22:58amosli   pts/1        2013-12-19 22:59 (:0.0)amosli   pts/2        2013-12-19 23:16 (:0.0)amosli@amosli-pc:~/learn$ timereal    0m0.000suser    0m0.000ssys    0m0.000samosli@amosli-pc:~/learn$ date2013年 12月 20日 星期五 01:06:41 CSTamosli@amosli-pc:~/learn$ exitexit #结束录制Script done, file is output.session

播放录制:

amosli@amosli-pc:~/learn$ scriptreplay timing.log output.session #按播放命令序列输出amosli@amosli-pc:~/learn$ hello1No command 'hello1' found, did you mean: Command 'hello' from package 'hello-debhelper' (main) Command 'hello' from package 'hello' (main)hello1: command not foundamosli@amosli-pc:~/learn$ whoamosli   tty7         2013-12-19 22:58amosli   pts/1        2013-12-19 22:59 (:0.0)amosli   pts/2        2013-12-19 23:16 (:0.0)amosli@amosli-pc:~/learn$ timereal    0m0.000suser    0m0.000ssys    0m0.000samosli@amosli-pc:~/learn$ date2013年 12月 20日 星期五 01:06:41 CSTamosli@amosli-pc:~/learn$ exitamosli@amosli-pc:~/learn$

 

进行多个用户之间进行广播视频会话:打开两个终端

(1)在终端1中输入以下命令:

mkfifo scriptfifo

(2)在终端2中输入以下命令:

cat scriptfifo

(3)返回终端1,输入以下命令:

script -f scriptfifocommands...

这样就实现了广播,在线课堂类的作用,非常神奇!!

我自己实验的输出:

终端1:amosli@amosli-pc:~$ mkfifo scriptfifoamosli@amosli-pc:~$ script -f scriptfifo Script started, file is scriptfifoamosli@amosli-pc:~$ whoamosli   tty7         2013-12-19 22:58amosli   pts/1        2013-12-19 22:59 (:0.0)amosli   pts/2        2013-12-20 01:14 (:0.0)amosli   pts/4        2013-12-20 01:16 (:0.0)amosli   pts/5        2013-12-20 01:20 (:0.0)amosli   pts/6        2013-12-20 01:20 (:0.0)amosli@amosli-pc:~$ 终端2:amosli@amosli-pc:~$ cat scriptfifoScript started on 2013年12月20日 星期五 01时21分19秒amosli@amosli-pc:~$ whoamosli   tty7         2013-12-19 22:58amosli   pts/1        2013-12-19 22:59 (:0.0)amosli   pts/2        2013-12-20 01:14 (:0.0)amosli   pts/4        2013-12-20 01:16 (:0.0)amosli   pts/5        2013-12-20 01:20 (:0.0)amosli   pts/6        2013-12-20 01:20 (:0.0)amosli@amosli-pc:~$

 

 

转载地址:http://izgta.baihongyu.com/

你可能感兴趣的文章
【备忘】Android获取正在使用网络的IP4地址
查看>>
poj2524
查看>>
C# Dictionary.Add(key,"123") 与 Dictionary[key]="123"的区别
查看>>
cocos2dx 学习代码记录
查看>>
xcode 各版本下载地址及其它工具下载地址
查看>>
MVC 自定义AuthorizeAttribute实现权限管理
查看>>
内存溢出导致jenkins自动部署到tomcat失败
查看>>
Python之zip
查看>>
try catch finally
查看>>
UOJ #148. 【NOIP2015】跳石头 二分
查看>>
lintcode 中等题:和大于S的最小子数组
查看>>
用于重新编译的工具和命令
查看>>
pthread_create()之前的属性设置
查看>>
composer使用
查看>>
STL 容器的概念
查看>>
多种方法实现Loading(加载)动画效果
查看>>
王立平-NGUI
查看>>
js监听 window.open 关闭事件
查看>>
Linux转发性能评估与优化-转发瓶颈分析与解决方式(补遗)
查看>>
C++编程学习52个经典网站 强力推荐
查看>>