Linux基础命令(三)

75 阅读4分钟

wc

-l:统计行数

[root@localhost opt]# cat 123
asdasdasdas
2131
123
124123
​
​
asdasd
​
​
asdas
​
dfggert
[root@localhost opt]# wc -l 123
12 123

-w:统计单词数

[root@localhost opt]# cat 123
asdasdasdas
2131
123
124123
​
​
asdasd
​
​
asdas
​
dfggert
[root@localhost opt]# wc -w 123
7 123

-c:统计字符数

[root@localhost opt]# cat 123
asdasdasdas
2131
123
124123
​
​
asdasd
​
​
asdas
​
dfggert
[root@localhost opt]# wc -c 123
54 123

不打选项全显示

[root@localhost opt]# cat 123
asdasdasdas
2131
123
124123
​
​
asdasd
​
​
asdas
​
dfggert
[root@localhost opt]# wc 123
12  7 54 123

标准输入:用键盘输入的信息

标准输出:电脑反馈的正确信息

错误输出:电脑反馈的错误信息

管道符的提示

cmd1(支持标准输出) | cmd2(支持标准输入)

如果cmd2不支持标准输入,可以使用xargs cmd2

grep

过滤文本中你感兴趣的内容

grep [选项] 匹配式(表达式) [文件]或标准输入 #匹配式不能放在文件名或标准输入后面

通配符:匹配文件名字 ls find [a-z]除了大Z

正则表达式:匹配文章里的内容(字符串)(grep) [a-z]就是小写字母

  • 表示字符的次数

  • 表示位置

    ^:表示以什么字符开头,开头就写在最开头

    $:表示以什么字符结尾,结尾就写在最后

    ^$:表示空行

    ^root$:

选项:

-n:显示行号

[root@localhost /]# grep -nr "huang" /etc/passwd
41:huang:x:1000:1000:HUANG:/home/huang:/bin/bash

-i:忽略大小写

[root@localhost /]# grep -ir "root" /etc
/etc/pki/ca-trust/extracted/openssl/README:root CA certificates.
/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt:# ACEDICOM Root
/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt:# Actalis Authentication Root CA
/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt:# AddTrust External Root
/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt:# AddTrust Low-Value Services Root
/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt:# AddTrust Public Services Root
/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt:# AddTrust Qualified Certificates Root

-v:反向匹配

-o:只显示匹配内容

[root@localhost /]# grep -or "root" /etc
/etc/fstab:root
/etc/pki/ca-trust/ca-legacy.conf:root
/etc/pki/ca-trust/ca-legacy.conf:root
/etc/pki/ca-trust/ca-legacy.conf:root
/etc/pki/ca-trust/extracted/README:root
/etc/pki/ca-trust/extracted/java/README:root
​

-r:递归匹配(在不明确某个文件的情况下,模糊查找某个字符或字符串)

[root@localhost /]# grep -r "root" /
/boot/grub2/grub.cfg:    set superusers="root"
/boot/grub2/grub.cfg:    password_pbkdf2 root ${GRUB2_PASSWORD}
/boot/grub2/grub.cfg:   set root='hd0,msdos1'
/boot/grub2/grub.cfg:     search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  0c9f94b6-f01b-4ec3-b589-2eb3016f3bb9
/boot/grub2/grub.cfg:     search --no-floppy --fs-uuid --set=root 0c9f94b6-f01b-4ec3-b589-2eb3016f3bb9
/boot/grub2/grub.cfg:   linux16 /vmlinuz-3.10.0-693.el7.x86_64 root=/dev/mapper/centos-root ro rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=zh_CN.UTF-8
/boot/grub2/grub.cfg:   set root='hd0,msdos1'
/boot/grub2/grub.cfg:     search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  0c9f
​

-w:只匹配单词

[root@localhost /]# grep -wr "root" /etc
/etc/fstab:/dev/mapper/centos-root /                       xfs     defaults        0 0
/etc/pki/ca-trust/ca-legacy.conf:# The upstream Mozilla.org project tests all changes to the root CA
/etc/pki/ca-trust/ca-legacy.conf:# to temporarily keep certain (legacy) root CA certificates trusted,
/etc/pki/ca-trust/ca-legacy.conf:#   It may keep root CA certificate as trusted, which the upstream 
/etc/pki/ca-trust/extracted/README:root CA certificates.
/etc/pki/ca-trust/extracted/java/README:root CA certificates.
​

-f:以文件作为匹配的条件

[root@localhost mnt]# cat a
123
456
abc
def
[root@localhost mnt]# cat b
123
abc
[root@localhost mnt]# grep -f a b
123
abc
​

grep "^$" 空行

grep -v “^$" 显示非空行

grep -v ”^#" 不是以#开头的行

> ; paste:标准输出重定向

合并A,B两个文件

上下合并:cat 文件名a 文件名b > 新文件名

左右合并:paste 文件名a 文件名b (-d:指定分隔符)

标准输出重定向,本来输出在屏幕上的内容,改变了输出

[root@localhost mnt]# vim 1
[root@localhost mnt]# vim 2
[root@localhost mnt]# cat 1 2 > 3
[root@localhost mnt]# cat 3
123
456
789
10 11 12
13 14 15
[root@localhost mnt]# paste 1 2 > 4
[root@localhost mnt]# ls
1  2  3  4
[root@localhost mnt]# cat 4
123 10 11 12
456 13 14 15
789 

压缩和解压缩文件

gzip/bzip2 -9(数字越大,压缩率越高):压缩

gzip/bzip2 -d:解压

gzip压缩率高于bzip2

tar :归档

tar 选项 自定义压缩包名称 要压缩的文件

选项:

-c:建立归档文件

f:代表使用归档(出现tar,一定要出现-f,否则命令不成功)

提示:加了- f必须放在最后,否则无法之心不过

不加- 选项随便

-x:解压缩

-C:指定解压的文件夹

-z:调用gzip压缩

-j:调用bzip2压缩

-v:显示过程,解压缩和压缩

-t:不解包查看压缩文件列表

压缩和解压缩过程
[root@localhost mnt]# tar cfzv 123.tar.gz *
a
b
test
[root@localhost mnt]# ls
123.tar.gz  a  b  test
[root@localhost mnt]# rm -rf a b test
[root@localhost mnt]# ls
123.tar.gz
[root@localhost mnt]# tar xf 123.tar.gz
[root@localhost mnt]# ls
123.tar.gz  a  b  test
不解包查看文件列表
[root@localhost mnt]# tar tf 123.tar.gz
a
b
test