语法: grep【选项】查找字符串 文件 功能: 在文件中搜索字符串,将找到的行打印出来 常用选项: -i :忽略大小写,所以大小写视为相同 -n : 顺便输出行号 -v :反向选择,即显示除了查找字符串外的所有字符。
先创建一个文件,里面随便输入一些字符串。 文件内容:
[root@iZbp19b5lvg8xtpf1tzrenZ blog]# cat test.txt
aaaaaaaaaaaaaaa
bbbbbbbbbbbbbbb
ccccccccccccccc
ccccccccccccccc
bbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
asddasdwdssds
wwwwwwwwwww
wwwww
eeeeeeeeeee
qqqqqqqqqqqq
假设我们要找带有bbb的字符串 打印结果:
[root@iZbp19b5lvg8xtpf1tzrenZ blog]# grep bbb test.txt
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
如果要输出行号的话
[root@iZbp19b5lvg8xtpf1tzrenZ blog]# grep -n bbb test.txt
2:bbbbbbbbbbbbbbb
7:bbbbbbbbbbbbbb
8:bbbbbbbbbbbbbbb
9:bbbbbbbbbbbbbbb
这里的行号为在文件当中的行号 输出除选定字符串外的所有字符串再加上行号
[root@iZbp19b5lvg8xtpf1tzrenZ blog]# grep -nv bbb test.txt
1:aaaaaaaaaaaaaaa
3:
4:ccccccccccccccc
5:ccccccccccccccc
6:
10:asddasdwdssds
11:
12:wwwwwwwwwww
13:wwwww
14:eeeeeeeeeee
15:qqqqqqqqqqqq
利用通道| 可以快速找到自己需要的内容,比如在查看日志的时候,如果确定了自己想要看的内容就可以利用|和grep。 下面是head 和 grep的|使用。
[root@iZbp19b5lvg8xtpf1tzrenZ blog]# head -n8 test.txt
aaaaaaaaaaaaaaa
bbbbbbbbbbbbbbb
ccccccccccccccc
ccccccccccccccc
bbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
[root@iZbp19b5lvg8xtpf1tzrenZ blog]# head -n8 test.txt|grep bbb
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
[root@iZbp19b5lvg8xtpf1tzrenZ blog]# grep bbb test.txt
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
语法:zip压缩文件 zip目录或文件 功能:将目录或文件压缩成zip格式 常用选项: -r 递归处理,将指定目录下的所有文件和子目录一并处理
解压到当前文件
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# tree blog
blog
├── dir
│ └── test
└── test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# zip -r blog.zip blog
adding: blog/ (stored 0%)
adding: blog/dir/ (stored 0%)
adding: blog/dir/test/ (stored 0%)
adding: blog/test.txt (deflated 72%)
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog blog.zip
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]#
解压到指定文件
解压到tmp目录: unzip test2.zip -d /tmp
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog.tgz blog.zip
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# unzip blog.zip
Archive: blog.zip
creating: blog/
creating: blog/dir/
creating: blog/dir/test/
inflating: blog/test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog blog.tgz blog.zip
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# tree blog
blog
├── dir
│ └── test
└── test.txt
2 directories, 1 file
语法: tar [-cxtzjvf] 文件与目录…参数: 常用选项: -c :建立一个压缩文件的参数指令(create 的意思); -x :解开一个压缩文件的参数指令! -t :查看 tarfile 里面的文件! -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩? -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩? -v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程! -f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数! -C : 解压到指定目录 虽然选项很多,但是最最简单的用法常用到的其实就5个。czf压缩,cvzf压缩加显示过程 xzf解压 xvzf解压加显示解压过程
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# ls
a.out blog code code.c tmp trash yui.txt
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# tar -czf blog.tgz blog
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# ls
a.out blog blog.tgz code code.c tmp trash yui.txt
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# rm -fr blog.tgz
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# ls
a.out blog code code.c tmp trash yui.txt
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# tar -cvzf blog.tgz blog
blog/
blog/dir/
blog/dir/test/
blog/test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# ls
a.out blog blog.tgz code code.c tmp trash yui.txt
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# rm -fr blog
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog.tgz blog.zip
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# tar -xvzf blog.tgz
blog/
blog/dir/
blog/dir/test/
blog/test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog blog.tgz blog.zip