最近在使用 BASH 进行处理 文本文件的时候,对于文本处理真的是力不从心,今天进行搜集一下linux 中文本处理相关的命令,这样你在进行书写shell 脚本的时候,就能写出更好的方案。...命令搜集: grep (较为重点) sed (重点) awk (重点) cat head tail more wc (重点) https://www.cnblogs.com/xuyaowen/...wc-command-intro.html uniq (重点) sort (重点) diff vim/vi tee gedit printf xargs xargs 是一条 Unix 和类 Unix 操作系统的常用命令...;它的作用是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题。...可单独使用,也可使用管道符、重定位符等与其他命令配合使用。 如果其中有命令还不是非常熟悉,请花时间看一看,多了解一下。必定事半功倍。 保持更新,转载请标明出处。
wc wc [OPTION]... [FILE]... -l: lines -w: words -c: characters [root@senlong ...
文本查看:cat、more、less、head、tail、 文本处理:cut、sort、uniq、wc、tr 1、cat:连接并显示 cat 后可跟一个或多个文件 cat /etc/issue cat...8、tr:转换或删除字符 tr ‘ab’ ‘cd’</etc/passwd :将/etc/passwd 文件内的ab替换成cd tr ‘a-z’‘A-Z’< /etc/passwd:将/etc/passwd...内的字符全部替换成大写,这里要求每个字母都有另一个字母和它一一对应 tr -d ‘ab’ < /etc/passwd:删除出现在字符集中的指定的字符,这里指的是在/etc/passwd删除所有“ab
示例:sort -t ‘,’ -k2 3.txt #以逗号’,’为分隔符,对第二列排序
Paste_Image.png 以行为单位替换内容 $sed '2,5c 这是alic替换的content' sedfile #替换第二到第五行的内容 ?...Paste_Image.png 内容搜索并替换 $sed 's/alic/灿/g' sedfile #将alic替换成灿 ?...Paste_Image.png 多点处理 sed -e '3,4d' -e 's/alic/灿/g' sedfile #删除第三四行 而且同时将alic替换成灿 ?...Paste_Image.png ---- Linux运维基础且常用命令 Linux之crontab定时任务 Linux之sed文本处理命令 Linux之ps进程查看命令 Linux之expect...交互语言命令 Linux之tail命令 ----
grep命令,分析一行的信息,若当中有我们所需要的信息,就将该行显示出来,该命令通常与管道命令一起使用,用于对一些命令的输出进行筛选加工等等 grep Aug /var/log/messages 在文件...在目录 '/var/log' 及随后的目录中搜索字符串"Aug" sed 's/stringa1/stringa2/g' example.txt 将example.txt文件中的 "string1" 替换成..."string2" sed '/^$/d' example.txt 从example.txt文件中删除所有空白行 paste命令 paste file1 file2 合并两个文件或两栏的内容 paste...-d '+' file1 file2 合并两个文件或两栏的内容,中间用"+"区分 sort命令 sort file1 file2 排序两个文件的内容 sort file1 file2 | uniq...sort file1 file2 | uniq -u 删除交集,留下其他的行 sort file1 file2 | uniq -d 取出两个文件的交集(只留下同时存在于两个文件中的文件) comm命令
Shell脚本中最有用的特性之一就是可以从命令输出中提取信息,并将其赋给变量。有两种方法可以将命令输出赋值给变量。 反引号字符(`) 反引号字符位于键盘上ESC键的下面。...赋值给变量的形式如下: test=`date` # demo $ test=`date` $ echo $test 2017年 1月11日 星期三 21时26分04秒 CST 两个反引号字符之间是shell命令...,shell命令的执行结果赋值给test,注意=两边不能有空格。
/bin/bash # Description: 替换rm命令,不是删除文件,而是移动文件到/tmp/trash_tmp/ TMP_DIR="/tmp/trash_tmp" mv $@ $TMP_DIR
合理的利用 Linux 的命令行工具,可以提高我们的工作效率。 本文简单的介绍三个能使用 Linux 文本处理命令的场景,给大家开阔一下思路。...而直接使用 Linux 的文本处理命令可以很方便地处理这些问题。...在这条命令中 | 符号将 cat 命令的输出指向到 awk 命令的输入中。 awk 是贝尔实验室 1977 年搞出来的文本流处理工具,用于对具有固定格式的文件进行流处理。...find services -name "*.java" -or -name "*.js" | xargs grep -il $keyword` 后记 本文简单介绍了程序员日常工作中可能用到 Linux...命令的三个场景。
合理的利用 Linux 的命令行工具,可以提高我们的工作效率。 本文简单的介绍三个能使用 Linux 文本处理命令的场景,给大家开阔一下思路。...而直接使用 Linux 的文本处理命令可以很方便地处理这些问题。...在这条命令中 | 符号将 cat 命令的输出指向到 awk 命令的输入中。 awk 是贝尔实验室 1977 年搞出来的文本流处理工具,用于对具有固定格式的文件进行流处理。...files=`find services -name "*.java" -or -name "*.js" | xargs grep -il $keyword` 后记 本文简单介绍了程序员日常工作中可能用到 Linux...命令的三个场景。
知道这些“秘密”代码意味着你可以使用 sed 这样的命令以编程方式替换它们。任何版本的 sed 都可以,所以你可以使用 GNU sed 或 BSD sed,甚至是 Busybox sed。.../\"/g" "${1}" 将此脚本保存为 fixquotes.sh,然后创建一个包含智能引号的单独测试文件: ‘Single quote’“Double quote” 运行该脚本,然后使用 cat 命令查看结果.../fixquotes.sh test.txt$ cat test.txt'Single quote'"Double quote" 安装 sed 如果你使用的是 Linux、BSD 或 macOS,那么你已经安装了...这是原始 sed 命令的两个独特的重新实现,对于本文中的脚本来说,它们在功能上是一样的(不过并不是所有的脚本都是这样)。
echo命令用于输出指定的字符串,常见用法如下: [root@localhost ~]$ echo # 输出一个空白行 [root@localhost ~]$ echo "hello...localhost ~]$ echo "hello world" > 1.txt # 输出字符串到指定文件 [root@localhost ~]$ echo `date` # 输出命令的执行结果...[root@aliyun-hk1 linux-shell-test]# echo 'hello\nworld' hello\nworld [root@aliyun-hk1 linux-shell-test...@aliyun-hk1 linux-shell-test]# echo -n hello world hello world[root@aliyun-hk1 linux-shell-test]# echo...echo文本处理命令的使用及示例的文章就介绍到这了,更多相关Linux echo命令内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn!
编程小技巧之 Linux 文本处理命令(二) 合格的程序员都善于使用工具,正所谓君子性非异也,善假于物也。合理的利用 Linux 的命令行工具,可以提高我们的工作效率。...本篇文章是《Linux 文本处理命令》 续篇,在前文的基础上再介绍几款有用的 Linux 命令行工具和使用场景。 再啰嗦几句,工具能提供效率,但是有一定的学习曲线和学习成本。...通过上述命令的组合,我们就完成了按照相同列合并两个文件的操作,这也体现了 Linux 的 KISS 思想,每个工具只做一小件事情。...因为文档中还有很多代码,包含很多圆括号语句,所以必须先准确超链接格式,然后再进行替换。 [img] 这里,我们可以使用 sed 命令。...sed 最简单的使用方法就是替换文本。比如,我们要将上述的 order.txt 中的 u全部替换为user,则可以使用如下命令。
合理的利用 Linux 的命令行工具,可以提高我们的工作效率。 本篇文章是《Linux 文本处理命令》 续篇,在前文的基础上再介绍几款有用的 Linux 命令行工具和使用场景。...通过上述命令的组合,我们就完成了按照相同列合并两个文件的操作,这也体现了 Linux 的 KISS 思想,每个工具只做一小件事情。...因为文档中还有很多代码,包含很多圆括号语句,所以必须先准确超链接格式,然后再进行替换。 ? 这里,我们可以使用 sed 命令。...sed 最简单的使用方法就是替换文本。比如,我们要将上述的 order.txt 中的 u全部替换为user,则可以使用如下命令。...$ sed 's/u/user/g' order.txt # u是被替换的词 user是替换词o1 1 user1 2011-9 o2 2 user2 2011-10 o3 3 user3 2011-10
for files in `ls`;do sed -i 's/\xEF\xBB\xBF//g' $files ;done ---- 8.当前目录下有若干UTF-8文件,使用file命令查看,显示“UTF
cat命令 cat 命令可以用来显示文本文件的内容(类似于 DOS 下的 type 命令),也可以把几个文件内容附加到另一个文件中,即连接合并文件。...-T 把 Tab 键 ^I 显示出来; -V 列出特殊字符; -s 当遇到有连续 2 行以上的空白行时,就替换为 1 行的空白行。...-s 当遇到有连续两行以上的空白行时,就替换为一行的空白行。 -u 不显示下引号(根据环境变量 TERM 指定的终端而有所不同)。 +n 从第 n 行开始显示文件内容,n 代表数字。...image.png 显示文件的开头 20 行内容 image.png less命令 less 命令的作用和 more 十分类似,都用来浏览文本文件中的内容,不同之处在于,使用 more 命令浏览文件内容时...tail命令 tail 命令和 head 命令正好相反,它用来查看文件末尾的数据,其基本格式如下: [root@localhost ~]# tail [选项] 文件名 选项 含义 -n K 这里的 K
cut命令 cut命令可以按指定的分隔符分割成多列 命令: -d切割字符 -f列的第几个参数 -c1-10指定字符串范围行的第一个到第十个 例子: 按字段筛选,输出第一列和第二列 [root@linux...123 654 abc [root@linux /]# cut -d " " -f1,2 xxx.txt 123 456 654 321 abc def sort命令 sort命令常用参数: -n...ccc:ghi dvf ebq evs:sfb wc命令 wc命令参数: wc -l file #统计行数 wc -w file #统计单词数 wc -c file #统计字符数 例子: [root...@linux /]# cat xxx.txt|wc -l 5 [root@linux /]# cat xxx.txt|wc -w 15 [root@linux /]# cat xxx.txt|wc...-m 80 uniq命令 uniq -c 去除重复的字符 -c列出重复个数
xargs 能够将输入数据转化为特定命令的命令行参数;这样,可以配合很多命令来组合使用。...,这个字符串在xargs扩展时会被替换掉,用于待执行的命令需要多个参数时 cat file.txt | xargs -I {} ....首处替换 seg 's/text/replace_text/'file //替换每一行的第一处匹配的text 全局替换 seg 's/text/replace_text/g' file 默认替换后.../' #包含linux文本的行(可以用正则表达式来指定,超级强大) awk '!.../linux/' #不包含linux文本的行 设置定界符 使用-F来设置定界符(默认为空格) awk -F: '{print $NF}'/etc/passwd 读取命令输出 使用getline,将外部
要替换字符串,我们需要使用以下格式。 $ sed s/替换的目标字符串/替换后的字符串/ 文件名 在下面我们替换写为“appleorangemelon”的字符串“sample.txt”。...另外,如下所示,在cat命令后用“|”连接sed命令也能得到同样的结果。...$ cat sample.txt | sed s/apple/APPLE/ 注意,sed命令仅替换字符串并输出它,但不会重写实际文件的内容 如果要将替换的内容保存在文本中,请使用重定向“>”。...sed命令使用的选项 命令选项 说明 -e 替换为指定的脚本 -f 文件 添加指定文件中描述的脚本文件的内容 -r 使用扩展正则表达式 sed命令的使用 替换所有行 在先前介绍的格式中,即使在一个行中存在与多个替换对象字符串匹配的字符串...,也仅替换第一个匹配的字符串。
领取专属 10元无门槛券
手把手带您无忧上云