Linux入门笔记——cat、sort、uniq、wc、head、tail、tee

cat - 连接文件

    cat 命令读取一个或多个文件,然后复制它们到标准输出。你可以使用 cat 来显示 文件而没有分页
    cat 经常被用来显示简短的文本文件。
案例 意义
cat ls-output.txt 读取文件标准输出
cat movie.mpeg.0* > movie.mpeg
连接文件,cat 可以 接受不只一个文件作为参数,所以它也可以用来把文件连接在一起。比方说我们下载了一个 大型文件,这个文件被分离成多个部分(USENET 中的多媒体文件经常以这种方式分离), 我们想把它们连起来。我们能用这个命令把它们连接起来:
因为通配符总是以有序的方式展开,所以这些参数会以正确顺序安排。

管道符号

    使用管道操作符”|”(竖杠),一个命令的 标准输出可以管道到另一个命令的标准输入:command1 | command2
例如:ls -l /usr/bin | less
将ls -l /usr/bin命令的输出内容作为 less命令的输入,最终的运行是less分页的显示ls -l /usr/bin运行的结果内容

排序

    管道线经常用来对数据完成复杂的操作。有可能会把几个命令放在一起组成一个管道线。 通常,以这种方式使用的命令被称为过滤器。过滤器接受输入,以某种方式改变它,然后 输出它。第一个我们想试验的过滤器是 sort。想象一下,我们想把目录/bin 和/usr/bin 中 的可执行程序都联合在一起,再把它们排序。
    例如:ls /bin /usr/bin | sort | less
    因为我们指定了两个目录(/bin 和/usr/bin),ls 命令的输出结果由有序列表组成, 各自针对一个目录。通过在管道线中包含 sort,我们改变输出数据,从而产生一个 有序列表。

过滤器

    uniq 命令(报告或忽略重复行)经常和 sort 命令结合在一起使用。uniq 从标准输入或单个文件名参数接受数据有序 列表(详情查看 uniq 手册页),默认情况下,从数据列表中删除任何重复行。所以,为了确信 我们的列表中不包含重复句子(这是说,出现在目录/bin 和/usr/bin 中重名的程序),
我们添加 uniq 到我们的管道线中:ls /bin /usr/bin | sort | uniq | less
在这个例子中,我们使用 uniq 从 sort 命令的输出结果中,来删除任何重复行。如果我们想看到 重复的数据列表,让 uniq 命令带上”-d”选项,就像这样: ls /bin /usr/bin | sort | uniq -d | less

WC(字计数)

wc(字计数)命令是用来显示文件所包含的行数,字数和字节数。


grep(打印匹配行)

grep 是个很强大的程序,用来找到文件中的匹配文本。
grep 命令格式:grep pattern [file...]
例如:我们想在我们的程序列表中,找到文件名中包含单词”zip”的所有文件
ls /bin /usr/bin | sort | uniq | grep zip
grep 有更方便的选项:”-i”告诉 grep 当执行搜索时忽略大小写(通常,搜索是大小写 敏感的);
”-v”选项会告诉 grep 只打印不匹配的行。

head / tail(打印文件开头部分/结尾部分)

    有时候你不需要一个命令的所有输出。可能你只想要前几行或者后几行的输出内容。 head 命令打印文件的前十行,而 tail 命令打印文件的后十行。默认情况下,两个命令 都打印十行文本,但是可以通过”-n”选项来调整命令打印的行数。
    例如: head -n 5 ls-output.txt   打印头5行数据
      tail -n 5 ls_output.txt   打印结尾5行数据
  ls /usr/bin | tail -n 5 打印 ls /usr/bin 运行结果的结尾5行数据
    tail 有一个选项允许你实时的浏览文件。当观察日志文件的进展时,这很有用,因为 它们同时在被写入。在以下的例子里,我们要查看目录/var/log 里面的信息文件。在 一些 Linux 发行版中,要求有超级用户权限才能阅读这些文件,因为文件/var/log/messages 可能包含安全信息。
    例如:tail -f /var/log/messages
    使用”-f”选项,tail 命令继续监测这个文件,当新的内容添加到文件后,它们会立即 出现在屏幕上。这会一直继续下去直到你输入 Ctrl-c。
    

tee(从 Stdin 读取数据,并同时输出到 Stdout 和文件)

    tee 程序从标准输入读入数据,并且同时复制数据 到标准输出(允许数据继续随着管道线流动)和一个或多个文件。当在某个中间处理 阶段来捕捉一个管道线的内容时,这很有帮助。这里,我们重复执行一个先前的例子, 这次包含 tee 命令,在 grep 过滤管道线的内容之前,来捕捉整个目录列表到文件 ls.txt:
    命令:ls /usr/bin | tee ls.txt | grep zip

    注释:tee程序(ls 程序管道过来的)获取标准输入(ls /usr/bin程序执行的结果)数据输出到标准输出同时也写入到ls.txt文件中


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/373619.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

fir.im Log Guru 正式开源,快速找到 iOS 应用无法安装的原因

很开心的宣布 Log Guru 正式开源! Log Guru,是 fir.im 开发团队创造的小轮子,用在 Mac 电脑上的日志获取,Github 地址:FIRHQ/LogGuru. Log Guru 使用方法 当有测试者反馈应用装不上的时候,将其测试设备连接…

python求解三元一次方程_北师大版八上数学5.2 求解二元一次方程组 知识点微课精讲...

知识点总结代入消元法代入消元法的实质是将二元一次方程组中的某一个方程进行未知数的分离,即将该方程进行变换,完整分离出一个独立的未知数,而这个未知数将用含有另一个未知数的式子来表示。设某二元一次方程组为:将第(1)式进行变…

Java 7:完整的invokedynamic示例

我当前的Java 7系列中的另一个博客条目。 这次,它处理的是invokedynamic,这是JVM上用于方法调用的新字节码指令。 invokedynamic指令允许在呼叫站点和呼叫接收者之间进行动态链接。 这意味着您可以将正在执行方法调用的类链接到在运行时正在接收调用的类…

VC6兼容性及打开文件崩溃问题解决

VC6虽然老,但是一些工程还非得用它打开,没办法…… 今天偶然用到,因为新装了系统,之前的问题又要重新解决一遍 在这记录下解决过程,方便以后查阅: 一.兼容问题: XP以上windows系统打开VC6时可能…

Linux入门笔记——echo

echo Display a line of text(显示一行文本)这个命令的作用相当简单明了。传递到 echo 命令的任一个参数都会在(屏幕上)显示出来。 小插曲: 每当你输入一个命令,然后按下 enter 键后,bash 会在执行你的命令之前对输入 …

10.25模拟 三角形

1. 三角形(trokuti.cpp/c/pas)? 【 问题描述 】? 平面上有N条直线,用方程A i x B i y C i0表示。这些直线没有三线共点的。现在要你计算出用这些直线可以构造出多少三角形?【 输入格式 】? 第1行:一个整数N(1 ≤ N≤ 300000)。? 下面N行…

dataframe 空值替换为0_Python数据分析:Pandas之DataFrame

内容目录 DataFrame简介DataFrame创建方式DataFrame索引和切片DataFrame属性DataFrame级联与合并DataFrame基本操作DataFrame分组聚合操作DataFrame数据透视与交叉表1 DataFrame简介 我们在上次课中讲到了Pandas的Series结构,还没看的点这里 ailsa:python数据分析:Pandas之S…

具有NetBeans,WebLogic 12c,JPA和MySQL数据源的Arquillian

您可能已经关注了我的文章,其中涉及使用嵌入式GlassFish测试更复杂的场景( 第I部分/第II部分 )。 我要做的下一步是使此设置与最新的WebLogic 12c一起使用。 入门 按照我的前两个帖子的入门部分中的步骤进行操作。 要使此工作正常&#xff…

SQL中 char varchar和nvarchar的区别

转至:http://www.cnblogs.com/carekee/articles/2094676.html char char是定长的,也就是当你输入的字符小于你指定的数目时,char(8),你输入的字符小于8时,它会再后面补空值。当你输入的字符大于指定的数时&#xff…

Linux入门笔记——less

less命令是一个用来浏览文本文件的程序,是早期 Unix 程序 more 的改进版,属于”页面调度器”程序类,该程序通过页方式在一页中轻松地文本文档。然而 more 程序只能向前分页浏览,而 less 程序允许前后分页浏览,它还有很多其它的特性。 less 命…

lfu算法实现c语言_哈希查找算法(C语言实现)

上一节介绍了有关哈希表及其构造过程的相关知识,本节将介绍如何利用哈希表实现查找操作。在哈希表中进行查找的操作同哈希表的构建过程类似,其具体实现思路为:对于给定的关键字 K,将其带入哈希函数中,求得与该关键字对…

现代化Java代码的七个NetBeans提示

在“ 七个不可或缺的NetBeans Java提示”一文中 ,我谈到了一般使用NetBeans提示的问题,然后重点介绍了七个提示。 接下来列出了该帖子中强调的七个提示: 可疑方法调用 使用或! AND字符串构造函数比较字符串 构造函数中的可重写方…

AngularJS $http service

原文链接:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/angularjs-http-service/ 1.通常用法: $http服务是一个只有一个参数-配置对象的函数,用于产生一个http请求并返回一个promise对象。 $http({ method: GET, url: /someUr…

Erwin 生成 mysql 带注释(comment )的脚本

Erwin设计数据库非常方便,有逻辑视图和物理视图,可以很方便的生成数据库文档和SQL 脚本。在使用过程中唯一不爽的地方是脚本不能生成comment。在百度无数次无法解决下,又翻墙谷歌,在一个日本网站找到了解决办法,不敢独…

YY语音01

1、YYSetup-8.2.0.1-zh-CN.exe (http://waiwai.duowan.com/)(http://www.yy.com/download) C:\Program Files (x86)\duowan\yy 1.1、YY游戏大厅,指向的安目录:“C:\Users\33\AppData\Roaming\duowan\yygame\ver\0\1.3.1.13\” 2、 3、 4、 5、转载于:htt…

手机屏幕宽高像素计算_2020年的智能手机拍照新设计,就全看下半年了

此前我们三易生活在总结2019年智能手机影像设计的变化时曾经提到,智能手机上的大底与大像素设计几乎是花了一整年的时间,把自己从单纯的噱头,逐步改进成了能够确实提高拍照画质的业界主流技术。站在现在的视角来看,2019年这阵“高…

带有Jersey和Spring的RESTful Web应用程序

几个月前,我们的任务是创建一个API,以向第三方开发人员公开我们系统中的某些功能。 我们选择将这些功能公开为一系列REST Web服务。 我开始使用Jersey ,它是JSR 311 (用于Restful Services的Java API)的参考实现&#…

关于更新pip的心得

如果pip install --upgrade pip 删除了自己,但是无法安装新的自己。 那么下载最新的pip,解压 1、在命令窗口输入 python(前提条件已经在系统路径) setup.py(pip 包里的脚本) install 即可 2、注销一下,让pip在系统路径生效 3、打开cmd,输…

Linux/Unix/Mac 系统GIT密码存储

新建一个 ~/.netrc 文件, 将 git 服务器, 用户名以及密码记录在这个文件, 如下所示: machine your-git-server login your-username password your-password普通用户的 git-server 填 github.com 就可以了. 如果有多个 server 就…

财务部门:你需要多长时间才能够回答老板的这些问题?

企业经营管理中,对管理决策者来说,有许多问题是希望随时都知道的,下面,我们一起来探讨一下,这些常见的问题,我们怎么来快速回答。首先,我们来回答以下几个问题:注:这几个…