Linux 笔记--文本

uniq

-i 忽略大小写
-c 进行计数
-fN 前 N 个区域被忽略

wc

行 字数 字符数

-l 仅列出行
-w 仅列出多少字
-m 多少字符

cut

-d 后接分割字符,与-f 一起使用
-f 用-f 去第几段
-c 以字符的单位取出固定字符区间

echo $PATH

/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:

echo $PATH | cut -d ‘:‘ -f2

/usr/bin

echo $PATH | cut -d ‘:‘ -f2,5

/usr/bin:/usr/sbin

echo $PATH | cut -d ‘:‘ -f2-5

/usr/bin:/bin:/usr/local/sbin:/usr/sbin

echo $pATH | cut -c1-4

/usr/lo

sort

-f 忽略大小写的差异
-b 忽略最前面的空格符部分
-M 以月份的名字来排序.
-n 使用纯数字
-r 反向排序
-u uniq,相同的数据,仅出现一行代表
-t 分隔符,默认是 tab
-k 以那个区间(field)来排序(与-t 搭配)
-c 测试文件是否已经分类
-m 合并 2 个分类文件
-u 删除所有复制行
-o 接存储的文件名

对-k, 也可以是 -k1 -k2, 表示的是先以 第二段來排序, 如果相同就以第二段

tr

-d 删除字符
-s 删除重复的字符

cat a.txt | tr -d ‘\r‘ > b.txt

修改 dos 文件的换行符 ^M

echo "hello world" | tr [a-z] [A-Z]

HELLO WORLD

echo "hello world" | tr -d o

hell wrld

echo "hello world" | tr o a

hella warld

echo "helllllo world" | tr -s l

helo world

tee 双重导向

-a 以类加的方式将数据加入 file 中

col

-x 将 tab 转换成对等的空格键
-b 在文字内有反斜杠/时,仅保留反斜杠刚最后接的那个字符

cat -A FILE 会出现很多I 符号(tab), 就可以使用转换成空格功能

join

2 个档案中, 有相同的数据的那一行, 才加在一起.

-t join 默认以空格分隔数据, 并且比对[第一个字段]的数据
-i 忽略大小写的差异
-o join -o 1.1 2.2 FILE1 FILE2,只取 1 2
-j join -j1 3 -j2 2 FILE1 FILE2, 取 3 和 2 部分
-1 表示第一个档案要用那个字段来分析
-2 表示第二个档案要用那个字段来分析

cat a

111 2222

cat b

22222 2222

cat c

111 3333

join a b

没有结果

join -1 2 a -2 2 b

2222 111 3333

join -1 2 b -2 2 b

2222 3333 111
如果第一个文件的第二个字段和第二个文件的第二个字段相同就 join

join -1 1 a -2 1 c

111 2222 3333

join -t ‘:‘ /etc/passwd /etc/shadow

将 2 个档案第一字段相同者整合成一行

join -t ‘:‘ -1 4 /etc/passwd -2 3 /etc/group

将第一个文件的第四个字段和第二个文件的第三个字段比较,相同就整合成一行.
在使用 join 之前, 档案应该要实现经过排序,否则有些比对的项目会被忽略.

paste

-d 后接分隔字符, 默认是[tab]
-s 将文件变成一行
paste /etc/passwd /etc/shadow
cat /etc/group | paste /etc/passwd /etc/shadow - | head -n 3

split

-b 接欲分割成的档案大小,可加单位 b k m
-l 以行数来进行分割

PREFIX 代表前导符的意思,可作为分割档案的前导文字.

split -b 300k /etc/termcap termcap

ll a.txt

-rw-rw-r-- 1 xiang xiang 3.7K Apr 27 15:45 a.txt

split -b 2k a.txt a.txt && ls

a.txt  a.txtaa  a.txtab

split -b 2k a.txt a && ll

total 40K
-rw-rw-r--   1 xiang xiang 2.0K Apr 27 15:45 aaa
-rw-rw-r--   1 xiang xiang 1.7K Apr 27 15:45 aab

xargs

-0 如果输入的 stdin 有特殊字符,例如 `, \, 空格键等等, 将他还原成一般字符
-e EOF 后面可以接一个字符串,当 xargs 分析到这个字符串时,就会停止继续工作!
-p 在执行每个指令的 argument 时,都会询问使用者;
-n 后面接次数,每次 command 指令执行时,使用几个参数。

find -exec COMMAND {} \;

操作是将前面找到的都作为一个参数來执行,而通过 xargs 就会将他们分解

find -type f | xargs file

查看文件的属性

ls | xargs cat | grep "cmov"

通过列出所有的文件, 然后 cat 再用 grep 查找.

expand

-t 后面可以接数字,将 tab 转换成空格
grep ‘^MANPATH‘ /etc/man* | head - n3 | cat -A
grep ‘^MANPATH‘ /etc/man* | head -n 3 | expand -t 6 | cat -A

经过 expand 之后就没有I 了, 因为被转换成了空格.

unexpand 将空格转换成 tab

grep ‘^MANPATH‘ /etc/man_db.conf | head -n 3| expand -t 12| unexpand -t 1 | cat -A
时间: 2024-10-11 14:08:36

Linux 笔记--文本的相关文章

linux笔记 文件的压缩与解压缩gzip、bzip2、xz、zip&unzip、tar打包、tar打包和压缩并用

压缩文件意义节省网络传输带宽,降低磁盘使用率.但会使用一定的cpu. 1.gzip 不支持压缩目录,gzip后直接跟文件名,在当前目录下压缩时,原文件会消失. #gzip filename 指定压缩目录:#gzip -c 123.txt > /tmp/123.txt.gz 将当前目录下123.txt文件压缩到tmp目录下名字为123.txt.gz 解压缩:#gzip -d file.gz #zcat file.gz  查看.gz文件内容 2.bzip2 不支持压缩目录,bzip2后可直接跟文件名

linux笔记之grep使用

1.问:grep.egrep是什么? 答:grep是文本搜索工具,grep是根据用户指定的'模式(pattern)'对目标文本进行过滤,显示被模式匹配到的行. 2.问:grep.egrep中用户指定的'模式(pattern)'是什么?分为几类? 答:grep中用户指定的'模式'是一种由特殊字符组成的具有某种特定意义的表达式,我们称为正则表达式,其中的特殊字符我们称为元字符.正则表达式分为:基本正则表达式.扩展正则表达式. 3.问:grep.egrep的使用格式是怎么书写的? 答:grep的使用格

Linux笔记常规部分总结(待续)

Linux笔记常规部分总结 shell: 子shell bash--bash bash: 1.命令历史.命令补全 2.管道.重定向 3.命令别名 4.命令行编辑 5.命令行展开 6.文件名通配 7.变量 8.编程 命令行编辑: 光标跳转: ctrl+a:跳到命令行首 ctrl+e:跳到命令行尾 ctrl+u:删除光标至命令行首的内容 ctrl+k:删除光标至命令行尾的内容 ctrl+l:清屏 命令历史: 查看命令历史:history -c:清空命令历史 -d OFFSET [n]:删除指定位置的

【03】Linux笔记

Linux 笔记 装机必备 立刻关机 sudo shutdown -t now 设置fish为默认shell chsh -s /usr/bin/fish 安装ssh服务 sudo apt install sshd 让你的sudo输错密码的时候嘲讽你 sudo visudo 然后在配置中加入如下一行: Defaults insults 安装ss-qt5 sudo add-apt-repository ppa:hzwhuang/ss-qt5 sudo apt install shadowsocks-

Linux基础文本查看命令之 cat,tac,more,less,head,tail

在使用linux的过程中多多少少都会涉及到文本的操作,因此掌握一些文本操作的工具命令能大大的提高我们的工作效率. cat命令 cat命令的用途是链接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者是从标准输入读取内容并显示,它常与重定向符号配合使用. 1)命令格式 cat    [选项]    [FILENAME] 2)命令功能 将文件或标准输入组合输出到标准输出. 3)命令参数 -E:在每行结束处显示 $ -n:对输出的所有行编号 -s:不输出多行空行 4)常

Linux系统文本编辑器vim指令大全

本文适合Vim新手,既可阅读入门 相关在线资料http://baike.baidu.com/subview/113188/9338173.htm?fr=aladdin vim的使用之汇总   vimtutor (在线学习) 功能最强在的编辑器--vim vi是所有UNIX系统都会提供的屏幕编辑器,它提供了一个视窗设备,通过它可以编辑文件.当然,对UNIX系统略有所知的人,或多或少都觉得vi超级难用,但vi是最基本的编辑器,所以希望读者能好好把它学起来,以后在UNIX世界里必将畅行无阻.游刃有余,

谢烟客---------Linux之文本处理三剑客之grep

Linux之文本处理三剑客介绍 awk 名称得自于它的创始人阿尔佛雷德·艾侯.彼得·温伯格和布莱恩·柯林汉姓氏的首个字母,它具备了一个完整的语言所应具有的几乎所有精美特性,AWK是一个解释器,三位创建者已将它正式定义为"样式扫描和处理语言".它允许您创建简短的程序,这些程序读取输入文件.为数据排序.处理数据.对输入执行计算以及生成报表,还有无数其他的功能.Linux使用的是Gnu版本的AWK,gawk grep 全称"Global search REgular express

辛星整理的三本linux笔记,免积分下载,希望对您有所帮助

废话不多说了,第一本是我在看李明老师的视频的时候的笔记,全书大约116页,在csdn上的下载地址为:点我下载 ,如果左边的地址崩溃了,也可以在浏览器中输入如下地址然后下载:http://download.csdn.net/detail/xinguimeng/7757985   在百度网盘上的下载地址为:点我去百度网盘,如果左边的地址跪了,也可以在浏览器中输入如下下载地址进行下载:http://pan.baidu.com/s/1pJBdc8N  . 第二本是我在看韩顺平老师讲linux的时候的笔记

2017-2-15从0开始前端学习笔记-文本

2017-2-15从0开始前端学习笔记-文本 标签 文本 粗体和斜体 <b>bold粗体</b> <i>italic斜体</i> 上标和下标 <sup>上标</sup> <sub>下标</sub> 空白 换行符和水品线 <br/>换行符 <hr/>水平线 语义化标记 加粗和强调 <strong>加粗 加强语气</strong> <em>强调 斜体 能改