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文件中

linux cat 筛选文件夹,Linux 基础命令 -- cat、sort、uniq、wc、head、tail、tee相关推荐

  1. linux怎么进入文件夹_Linux基础命令《上》

    上一节介绍了VMware中安装centos7以及克隆系统,之中用到的几个命名还都是开发不常用的,这节课就准备讲解一下入门的Linux命名,都是日常使用的. 首先呢,我们进入系统后,得先知道我是谁,我在 ...

  2. linux 4g大小文件夹,Linux: 如何分割文件,不再被 4G 大小限制了

    单文件 4G 限制 FAT32 4G 限制 百度网盘超出 4G 限制 单文件分割与合并 单文件,如:archive.tar.gz 分割 split -b 3000M -d -a 1 archive.t ...

  3. linux 删除tmp文件夹,Linux下tmp文件夹的文件自动删除的问题(转)

    场景: 近日发现有一台机器tmp文件夹下放置的文件无辜丢失,而且排查发现是自动丢失,并且,只是删除10天之前的文件. 本来以为是哪位写了一个自动执行脚本, find了一下10天前的文件删除了. 结果, ...

  4. linux 创建中文文件夹,linux下创建文件和文件夹-Go语言中文社区

    使用linux系统会有一些常见的命令,譬如说,创建文件夹,创建文件,这些命令都是比较常见的. 方法/步骤 首先说一下touch 创建二进制文件,用法就非常的简单,touch+文件名   之间一定要空格 ...

  5. 电脑上的linux是什么文件夹,linux删除文件夹,详细教您电脑的linux怎么样删除文件夹...

    上期小编讲解了重装系统win7旗舰版64位教程,本次正特手机网小编给大家讲解一下linux删除文件夹,详细教您电脑的linux怎么样删除文件夹,linux主要是做什么用的?有用户在网上提出这样的提问, ...

  6. linux scp 过滤文件夹,linux中使用scp远程拷贝文件及文件夹

    linux中使用scp远程拷贝文件及文件夹 linux scp远程拷贝文件及文件夹,需要的朋友可以参考下 1.拷贝本机/home/wtf/test整个目录至远程主机192.168.100.1的/roo ...

  7. linux挂载一个文件夹,linux挂载一个文件夹到另一个文件夹

    linux 挂载一个文件夹到另一个文件夹 Most Linux and Unix file systems don't allow hard links to directories (except ...

  8. linux没有jre文件夹,linux上配置jdk时,java命令提示没有此文件或文件夹的解决方法...

    linux上配置jdk时,java命令提示没有此文件或文件夹的解决方法 出现这个问题可能有以下几种原因: 1.对该文件没有执行的权限. 2.我们的机器是64位的,而下载的jdk是32位的. 我就是后一 ...

  9. 删除 linux的ln文件夹,linux下添加链接与删除链接(ln命令的用法)

    添加链接使用ln命令 用法: #ln --help 用法:ln [选项]... 目标 [链接名] 或:ln [选项]... 目标... 目录 或:ln [选项]... --target-directo ...

最新文章

  1. 获取SQLServer数据库中所有表
  2. jbutton 数组创建 java_java-将JButton数组添加到JPanel(按钮不可见)
  3. mysql 聚簇索引 和聚簇索引 (二级索引)的 那些事
  4. 福建农商银行计算机类笔试题目,2020年福建福州农商银行免笔试面试试题
  5. 安全基础知识 细说暴库的原理与方法
  6. 95-240-060-源码-state-状态生存时间(TTL)
  7. 【Flink】Flink打包Could not resolve dependencies flink-statebackend-rocksdb_2.11:jar:1.9.1
  8. 一个人如果不学习,30岁就死了,活着的只是重复和应付
  9. 看好某一个机会和项目,拥有或掌握某一个资源要素和自然禀赋,寻找并组合志同道合
  10. 计算机算法设计与分析 大整数乘法
  11. 新浪视频播放器站外调用代码
  12. JESD204B 协议解析和参数理解
  13. JavaScript:实现返回格式化的电话号码的字符串算法(附完整源码)
  14. 模型常见问题及规范--模型制作PBR流程规范规范
  15. 直播带货这么火,如何在小程序中实现视频通话及直播互动功能?
  16. visual studio设置字体及护眼背景色
  17. Fastapi学习笔记(一)
  18. 音频剪辑软件怎么剪切音频
  19. 免费空间/硬盘/相册的集合。。。
  20. im即时通讯开发之后台应用保活、消息推送的噩梦

热门文章

  1. mysql的count函数类型是什么意思_详细解读MySQL中COUNT函数的用法
  2. python类为什么要初始化_python3类对象需要在init中初始化吗?
  3. UI设计灵感|如何简易花繁多的数据?功能仪表盘界面设计来看
  4. 高品质静物空间海报模板PSD分层素材
  5. php 数据相加,PHP数组合并之array_merge和数组相加
  6. mysql 流量带宽_流量与带宽
  7. android 浮动文字提示,怎么在Android中实现一个自由拖动并显示文字的悬浮框
  8. oracle建表6大约束,oracle 建表 约束 constraint
  9. java 狗带风波_养狗风波作文
  10. slam十四讲第二版 pdf_先搞定SLAM,再谈如何抓住下一代互联网产业爆发点!