linux基础命令二

linux基础二


一、压缩/解压缩命令

1.gzip
gzip:            //压缩后的文件以.gz结尾 压缩完成后会删除原文件
[root@192 ~]# gzip anaconda-ks.cfg
[root@192 ~]# ls
anaconda-ks.cfg.gz
gzip -d :       //解压缩,解压完成后会删除原文件
[root@192 ~]# gzip -d anaconda-ks.cfg.gz 
[root@192 ~]# ls
anaconda-ks.cfg
gunzip         //解压缩,解压完成后会删除原文件
[root@192 ~]# gunzip anaconda-ks.cfg.gz 
[root@192 ~]# ls
anaconda-ks.cfg

2.bzip2
bzip2:       //压缩后的文件以.bz2结尾   压缩完成后会删除原文件
[root@192 ~]# bzip2 anaconda-ks.cfg.bz2 
[root@192 ~]# ls
anaconda-ks.cfg.bz2
bzip2 -d:  //解压缩,解压完成后会删除原文件
[root@192 ~]# bzip2 -d anaconda-ks.cfg.bz2 
[root@192 ~]# ls
anaconda-ks.cfg
bunzip2:   //解压缩,解压完成后会删除原文件
[root@192 ~]# bunzip2 anaconda-ks.cfg.bz2 
[root@192 ~]# ls
anaconda-ks.cfg
3.xz
xz         //压缩后的文件以.xz结尾 压缩完成后会删除原文件
[root@192 ~]# xz anaconda-ks.cfg 
[root@192 ~]# ls
anaconda-ks.cfg.xz
xz -d:    //解压缩,解压完成后会删除原文件
[root@192 ~]# xz -d anaconda-ks.cfg.xz 
[root@192 ~]# ls
anaconda-ks.cfg
unxz:    //解压缩,解压完成后会删除原文件
[root@192 ~]# unxz anaconda-ks.cfg.xz 
[root@192 ~]# ls
anaconda-ks.cfg
4.tar //归档工具,只归档不压缩,
tar -cf:    //-c 创建归档文件 -f 操作的归档文件
[root@192 ~]# tar -cf 222 /usr/local/
tar: Removing leading `/' from member names
[root@192 ~]# file 222 
222: POSIX tar archive (GNU)

tar -x:    //还原归档
[root@192 ~]# tar -xf 222
[root@192 ~]# ls
111  222  anaconda-ks.cfg  usr

tar -zcf:    //归档并调用gzip压缩
[root@192 ~]# tar -zcf sysconfig.tar.gz /etc/sysconfig/
tar: Removing leading `/' from member names
[root@192 ~]# ls
anaconda-ks.cfg  sysconfig.tar.gz
tar -zxf:    //调用gzip解压缩并展开归档
[root@192 ~]# tar -zxf sysconfig.tar.gz 
[root@192 ~]# ls
anaconda-ks.cfg  etc  sysconfig.tar.gz

tar -jcf:    //归档并调用bzip2压缩
[root@192 ~]# tar -jcf sysconfig.tar.bz2 /etc/sysconfig/
tar: Removing leading `/' from member names
[root@192 ~]# file sysconfig.tar.bz2 
sysconfig.tar.bz2: bzip2 compressed data, block size = 900k
[root@192 ~]# ls
anaconda-ks.cfg  sysconfig.tar.bz2
tar -jxf:    //调用bzip2解压缩并展开归档
[root@192 ~]# tar -jxf sysconfig.tar.bz2
[root@192 ~]# ls
anaconda-ks.cfg  etc  sysconfig.tar.bz2

tar -Jcf:    //归档并调用xz压缩
[root@192 ~]# tar -Jcf sysconfig.tar.xz /etc/sysconfig/
tar: Removing leading `/' from member names
[root@192 ~]# file sysconfig.tar.xz 
sysconfig.tar.xz: XZ compressed data
[root@192 ~]# ls
anaconda-ks.cfg  sysconfig.tar.xz
tar -Jxf:    //调用xz解压缩并展开归档
[root@192 ~]# tar -Jxf sysconfig.tar.xz 
[root@192 ~]# ls
anaconda-ks.cfg  etc  sysconfig.tar.xz

二、查看文件

1.cat
cat: //拼接文件内容并输出至标准输出(屏幕)
[root@192 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin
systemd-resolve:x:193:193:systemd Resolver:/:/sbin/nologin
tss:x:59:59:Account used for TPM access:/dev/null:/sbin/nologin
polkitd:x:998:996:User for polkitd:/:/sbin/nologin
unbound:x:997:994:Unbound DNS resolver:/etc/unbound:/sbin/nologin
sssd:x:996:993:User for sssd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin


cat -n:    //-n 显示行号
[root@192 ~]# cat -n /etc/passwd
     1  root:x:0:0:root:/root:/bin/bash
     2  bin:x:1:1:bin:/bin:/sbin/nologin
     3  daemon:x:2:2:daemon:/sbin:/sbin/nologin
     4  adm:x:3:4:adm:/var/adm:/sbin/nologin
     5  lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
     6  sync:x:5:0:sync:/sbin:/bin/sync
     7  shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
     8  halt:x:7:0:halt:/sbin:/sbin/halt
     9  mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
    10  operator:x:11:0:operator:/root:/sbin/nologin
    11  games:x:12:100:games:/usr/games:/sbin/nologin
    12  ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
    13  nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
    14  dbus:x:81:81:System message bus:/:/sbin/nologin
    15  systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin
    16  systemd-resolve:x:193:193:systemd Resolver:/:/sbin/nologin
    17  tss:x:59:59:Account used for TPM access:/dev/null:/sbin/nologin
    18  polkitd:x:998:996:User for polkitd:/:/sbin/nologin
    19  unbound:x:997:994:Unbound DNS resolver:/etc/unbound:/sbin/nologin
    20  sssd:x:996:993:User for sssd:/:/sbin/nologin
    21  sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
2.more

//全屏查看文本文件内容,只能从前往后,不能从后往前。文件内容显示完后自动退出

3.less

//全屏查看文本文件内容,可从前往后亦可从后往前。推荐使用

4.head
head:      //开始打印文件内容,默认打印10行
[root@192 ~]# head /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin

head -n:    ////指定要打印的行数,可以是-n 5也可以是-5
[root@192 ~]# head -5 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
5.tail
tail:    //查看文本文件尾部内容
[root@192 ~]# tail /etc/passwd
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin
systemd-resolve:x:193:193:systemd Resolver:/:/sbin/nologin
tss:x:59:59:Account used for TPM access:/dev/null:/sbin/nologin
polkitd:x:998:996:User for polkitd:/:/sbin/nologin
unbound:x:997:994:Unbound DNS resolver:/etc/unbound:/sbin/nologin
sssd:x:996:993:User for sssd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

tail -n:    //指定要打印的行数,可以是-n 5也可以是-5
[root@192 ~]# tail -5 /etc/passwd
tss:x:59:59:Account used for TPM access:/dev/null:/sbin/nologin
polkitd:x:998:996:User for polkitd:/:/sbin/nologin
unbound:x:997:994:Unbound DNS resolver:/etc/unbound:/sbin/nologin
sssd:x:996:993:User for sssd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
6.head和tail的结合
[root@192 ~]# head -5 /etc/passwd |tail -1  //查看/etc/passwd的第五行内容
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

三、文件处理

1.cut
cut:     //截取文本内容
        -d      //指定字段分隔符,默认是空格
        -f      //指定要显示的字段
[root@192 ~]# cut -d ":" -f 1,7 |head -5      //截取/etc/passwd的第一列和第七列内容,显示前五行
root:/bin/bash
bin:/sbin/nologin
daemon:/sbin/nologin
adm:/sbin/nologin
lp:/sbin/nologin
[root@192 ~]# 
2.sed
sed:    //基于行的过滤和转换文本的流编辑器
[root@192 ~]# sed 's/0/5/g' abc           //替换指定文件的字符串
root:x:5:5:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:5:sync:/sbin:/bin/sync

[root@192 ~]# sed -i 's/0/5/g' abc       //-i 更改文件内容,永久更改
[root@192 ~]# cat abc
root:x:5:5:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:5:sync:/sbin:/bin/sync
3.awk
awk:     ////基于列的文本报告工具
[root@192 ~]# awk -F : '{print $1,$6}' passwd | head -2       
root /root
bin /bin

四、文件排序

1.sort
sort:    //默认升序排序,不是按数值大小排序的
[root@192 ~]# sort abc
1 2 3 
2 5 8 
3 2 1 
3 6 9
4 6 8 
5 4 2
6 6 6
7 7 7
8 5 2

sort -n:   //根据数值大小进行排序
[root@192 ~]# sort -n abc
1 1 4
1 2 3 
1 2 4 
1 4 7 
2 4 6 
2 5 8 
3 6 9 
7 5 9
7 8 9

sort -r:      //逆序排序
[root@192 ~]# sort -nr abc
7 8 9
7 5 9
3 6 9 
2 5 8 
2 4 6 
1 4 7 
1 2 4 
1 2 3 
1 1 4

        -t      //字段分隔符
        -k      //以哪个字段为关键字进行排序
        -u      //去重,排序后相同的行只显示一次
        -f      //排序时忽略字符大小写
2.uniq
uniq:    //报告重复的行(连续且完全相同方为重复)
[root@192 ~]# sort -nr abc|uniq
7 7 7
6 6 6 
5 4 8 
4 2 8 
4 2 8
1 5 9
1 2 3 
1 2 3

uniq -c    //显示文件中行重复的次数
[root@192 ~]# sort -nr abc|uniq -c
      1 7 7 7
      1 6 6 6 
      1 5 4 8 
      1 4 2 8 
      1 1 5 9
      1 1 2 3 
      2 1 2 3

uniq -d:      //只显示重复的行
[root@192 ~]# sort -nr abc|uniq -d
1 2 3

uniq -u:      //只显示未重复的行
[root@192 ~]# sort -nr abc|uniq -u
6 6 6 
5 4 8 
4 2 8 
1 5 9
1 2 3 

五、文本统计

1.wc
wc -c:      //显示字节数
[root@192 ~]# cat abc | wc -c
46

wc-l:      //显示行数
[root@192 ~]# cat abc | wc -l
7

wc-w:      //显示单词数
[root@192 ~]# cat abc | wc -w
21

六、大小统计

du      //查看文件或目录占用的磁盘空间大小
        -h      //以人类友好的方式显示大小
        -s      //显示总的占用空间大小
[root@192 ~]# du -hs abc
4.0K    abc

df      //报告文件系统磁盘空间使用情况
        -h      //以人类友好的方式显示大小
        -i      //显示inode信息
[root@192 ~]# df -hi
Filesystem          Inodes IUsed IFree IUse% Mounted on
devtmpfs              460K   384  459K    1% /dev
tmpfs                 464K     1  464K    1% /dev/shm
tmpfs                 464K   636  464K    1% /run
tmpfs                 464K    17  464K    1% /sys/fs/cgroup
/dev/mapper/cl-root    32M   45K   32M    1% /
/dev/mapper/cl-home    16M     3   16M    1% /home
/dev/sda1             512K   310  512K    1% /boot
tmpfs                 464K     5  464K    1% /run/user/0

七、主机名管理

1.hostname
hostname:    // //查看或临时修改主机名,重开终端有效,重启失效
[root@192 ~]# hostname yy
[root@192 ~]# hostname
yy
2.hostnamectl //查看或永久修改主机名,重开终端生效,重启依然有效
[root@192 ~]# hostnamectl set-hostname yy
[root@192 ~]# hostname
yy
[root@192 ~]# bash
[root@yy ~]# 

八、其他

1.time
time :    //显示命令的执行时间,例如time ls /etc
[root@yy ~]# time sleep 3

real    0m3.001s
user    0m0.001s
sys     0m0.000s
2.clear //清屏:ctrl+l
3.whoami
whoami:    //显示当前登录用户
4.w //显示当前在线用户并显示其在运行的命令
5.who //查看当前在线用户
[root@yy ~]# whoami
root
6.which
which:    ////显示指定命令的绝对路径
[root@yy ~]# which echo
/usr/bin/echo
7.date
date:    ////显示或设置日期与时间
[root@yy ~]# date
Fri Jul  1 21:54:57 CST 2022
    //不带参数的date用于显示当前系统日期与时间
        -s      //以字符串方式设置时间
        //格式化输出时间:+
            %Y      //年
            %m      //月
            %d      //日
            %H      //时
            %M      //分
            %S      //秒
[root@yy ~]# date  +"%Y-%m-%d %H:%M.%S"
2022-07-01 22:01.27
8.ldd
ldd:    //查看指定程序有哪些依赖库文件
[root@yy ~]# ldd /bin/chown
        linux-vdso.so.1 (0x00007fff284f5000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f562953c000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f5629b12000)
[root@yy ~]# 
    //月
            %d      //日
            %H      //时
            %M      //分
            %S      //秒
[root@yy ~]# date  +"%Y-%m-%d %H:%M.%S"
2022-07-01 22:01.27
8.ldd
ldd:    //查看指定程序有哪些依赖库文件
[root@yy ~]# ldd /bin/chown
        linux-vdso.so.1 (0x00007fff284f5000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f562953c000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f5629b12000)
[root@yy ~]# 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值