【Linux】Re03

一、软连接

语法用法

ln -s 源文件或者目录位置 链接名称

[root@localhost ~]# mkdir -p aa/bb/cc/dd
[root@localhost ~]# ln -s aa/bb/cc/dd d
[root@localhost ~]# ll
总用量 4
drwxr-xr-x. 3 root root   16 11月 29 18:30 aa
-rw-------. 1 root root 1322 11月 29 17:10 anaconda-ks.cfg
lrwxrwxrwx. 1 root root   11 11月 29 18:31 d -> aa/bb/cc/dd

移除链接

[root@localhost ~]# rm d
rm:是否删除符号链接 "d"?y

二、查看历史命令记录

[root@localhost ~]# history
    1  cd ~
    2  cd .
    3  pwd
    4  cd ..
    5  pwd
    6  cd ~
    7  mkdir aaa
    8  ls
    9  mkdir /root/bbb
   10  ls
.....

查看最近使用的N个命令

history N

执行指定的第N个命令

!N

三、日期时间

[root@localhost ~]# date
2020年 11月 29日 星期日 18:36:50 CST
[root@localhost ~]# cal
     十一月 2020    
日 一 二 三 四 五 六
 1  2  3  4  5  6  7
 8  9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30

date 语法

[root@localhost ~]# date +%y
20
[root@localhost ~]# date +%m
11
[root@localhost ~]# date +%d
29
[root@localhost ~]# date "+%y %m %d %H %M %S"
20 11 29 18 39 32
[root@localhost ~]# date "+%y年 %m月 %d日 %H时 %M分 %S秒"
20年 11月 29日 18时 39分 56秒

cal语法

显示指定年份的日历

[root@localhost ~]# cal 2020
                               2020                               

        一月                   二月                   三月        
日 一 二 三 四 五 六   日 一 二 三 四 五 六   日 一 二 三 四 五 六
          1  2  3  4                      1    1  2  3  4  5  6  7
 5  6  7  8  9 10 11    2  3  4  5  6  7  8    8  9 10 11 12 13 14
12 13 14 15 16 17 18    9 10 11 12 13 14 15   15 16 17 18 19 20 21
19 20 21 22 23 24 25   16 17 18 19 20 21 22   22 23 24 25 26 27 28
26 27 28 29 30 31      23 24 25 26 27 28 29   29 30 31

        四月                   五月                   六月        
日 一 二 三 四 五 六   日 一 二 三 四 五 六   日 一 二 三 四 五 六
          1  2  3  4                   1  2       1  2  3  4  5  6
 5  6  7  8  9 10 11    3  4  5  6  7  8  9    7  8  9 10 11 12 13
12 13 14 15 16 17 18   10 11 12 13 14 15 16   14 15 16 17 18 19 20
19 20 21 22 23 24 25   17 18 19 20 21 22 23   21 22 23 24 25 26 27
26 27 28 29 30         24 25 26 27 28 29 30   28 29 30
                       31
        七月                   八月                   九月        
日 一 二 三 四 五 六   日 一 二 三 四 五 六   日 一 二 三 四 五 六
          1  2  3  4                      1          1  2  3  4  5
 5  6  7  8  9 10 11    2  3  4  5  6  7  8    6  7  8  9 10 11 12
12 13 14 15 16 17 18    9 10 11 12 13 14 15   13 14 15 16 17 18 19
19 20 21 22 23 24 25   16 17 18 19 20 21 22   20 21 22 23 24 25 26
26 27 28 29 30 31      23 24 25 26 27 28 29   27 28 29 30
                       30 31
        十月                  十一月                 十二月       
日 一 二 三 四 五 六   日 一 二 三 四 五 六   日 一 二 三 四 五 六
             1  2  3    1  2  3  4  5  6  7          1  2  3  4  5
 4  5  6  7  8  9 10    8  9 10 11 12 13 14    6  7  8  9 10 11 12
11 12 13 14 15 16 17   15 16 17 18 19 20 21   13 14 15 16 17 18 19
18 19 20 21 22 23 24   22 23 24 25 26 27 28   20 21 22 23 24 25 26
25 26 27 28 29 30 31   29 30                  27 28 29 30 31

四、文件搜索

FIND命令

find 位置范围 参数 参数值

参数列表
-name 按名称
-user 按用户
-size 按字节大小
- - - - - - - - - - - - - - - - - - - - - - - - - - - 
演示案例环境搭建1:
[root@localhost ~]# cd aa/bb/cc/dd
[root@localhost dd]# ls
[root@localhost dd]# touch abc.txt
[root@localhost dd]# cd ~

使用find找到/目录下名称为abc.txt文件:
[root@localhost ~]# find / -name abc.txt
/root/aa/bb/cc/dd/abc.txt
- - - - - - - - - - - - - - - - - - - - - - - - - - - 
演示案例环境搭建2:
[root@localhost ~]# su user-01
[user-01@localhost root]$ cd  ~
[user-01@localhost ~]$ touch /tmp/bb.txt

使用find查找tmp目录下所属user-01的文件
[root@localhost ~]# find /tmp -user user-01
/tmp/bb.txt
- - - - - - - - - - - - - - - - - - - - - - - - - - - 
演示案例3:
查找大小大于5G的文件
[root@localhost ~]# find / -size +5G
/proc/kcore
find: ‘/proc/25746/task/25746/fd/6’: 没有那个文件或目录
find: ‘/proc/25746/task/25746/fdinfo/6’: 没有那个文件或目录
find: ‘/proc/25746/fd/5’: 没有那个文件或目录
find: ‘/proc/25746/fdinfo/5’: 没有那个文件或目录
【+5G 大于5G -5G 小于5G 5G等于5G 单位k,M,G】

LOCATE命令

用法 
locate 文件名称

基于数据库查询,首次运行需要初始化数据库
命令:updatedb

但是实际执行没找到该命令,发现需要mlocate

yum install -y mlocate

WHICH命令

which 命令

查看命令所属的目录

[root@localhost /]# which cd
/usr/bin/cd
[root@localhost /]# which mkdir
/usr/bin/mkdir
[root@localhost /]# which pwd
/usr/bin/pwd

五、过滤查找

grep 过滤查找

-n 参数标识显示匹配行和行号
-i 忽略字母大小写

| 管道符号
将该符号的前一个命令的输出结果传递给该符号后一个命令进行处理

演示案例:

[root@localhost ~]# cat aa.txt | grep "百度"
到百度首页
百度首页设置登录
百度热榜�换一换
搜索工具百度为您找到相关结果约21,200,000个
linux提示[-f: 未找到命令_百度知道
百度快照
百度快照
百度快照
百度快照
找不到“运行”命令怎么办 - 百度经验
百度经验
百度快照
百度快照
成功编译的,执行时怎么提示未找到命令?【linux吧】 - 百度...
百度贴吧
百度快照
百度快照
百度快照

带行号显示

[root@localhost ~]# cat aa.txt | grep -n "百度"
2:到百度首页
4:百度首页设置登录
6:百度热榜�换一换
23:搜索工具百度为您找到相关结果约21,200,000个
25:linux提示[-f: 未找到命令_百度知道
31:百度快照
36:百度快照
41:百度快照
47:百度快照
50:找不到“运行”命令怎么办 - 百度经验
53:百度经验
55:百度快照
60:百度快照
61:成功编译的,执行时怎么提示未找到命令?【linux吧】 - 百度...
66:百度贴吧
68:百度快照
74:百度快照
79:百度快照

单grep命令使用:

[root@localhost ~]# grep -n "百度" aa.txt
2:到百度首页
4:百度首页设置登录
6:百度热榜�换一换
23:搜索工具百度为您找到相关结果约21,200,000个
25:linux提示[-f: 未找到命令_百度知道
31:百度快照
36:百度快照
41:百度快照
47:百度快照
50:找不到“运行”命令怎么办 - 百度经验
53:百度经验
55:百度快照
60:百度快照
61:成功编译的,执行时怎么提示未找到命令?【linux吧】 - 百度...
66:百度贴吧
68:百度快照
74:百度快照
79:百度快照

六、压缩解压

G压缩解压

gzip 要压缩的文件【gzip不可以压缩目录】
压缩之后生产一个*.gz文件,并且移除源文件

gunzip 要解压的文件
解压之后,原始的压缩文件移除

[root@localhost ~]# ls
aa.txt  anaconda-ks.cfg
[root@localhost ~]# gzip aa.txt
[root@localhost ~]# ls
aa.txt.gz  anaconda-ks.cfg
[root@localhost ~]# gunzip aa.txt.gz
[root@localhost ~]# ls
aa.txt  anaconda-ks.cfg
- - - - - - - - - - - - - - - - - - - - - - - - - - - 
ZIP压缩解压

zip 压缩文件名称 源文件
zip -r 压缩文件名称 源文件或者目录

unzip  压缩文件名称 
unzip -d 指定目录 压缩文件名称
- - - - - - - - - - - - - - - - - - - - - - - - - - - 
TAR压缩解压
-c 生成.tar打包文件
-v 输出详细信息
-f 指定压缩后的文件名
-z 打包同时并压缩
-x 解压

打包压缩aa.txt
[root@localhost ~]# tar -zcvf aa.tar.gz aa.txt
aa.txt
[root@localhost ~]# ls
aa.tar.gz  aa.txt  anaconda-ks.cfg

拆包解压aa.tar.gz
[root@localhost ~]# rm aa.txt
rm:是否删除普通文件 "aa.txt"?
[root@localhost ~]# tar -zxvf aa.tar.gz
aa.txt
[root@localhost ~]# ls
aa.tar.gz  aa.txt  anaconda-ks.cfg

解压指定目录
[root@localhost ~]# tar -zxvf aa.tar.gz -C /tmp
aa.txt
[root@localhost ~]# ll /tmp
总用量 8
-rw-r--r--. 1 root    root     45 11月 29 19:19 aa.txt
-rw-rw-r--. 1 user-01 user-01   0 11月 29 18:47 bb.txt
-rwx------. 1 root    root    836 11月 29 17:10 ks-script-fGNRQC
drwx------. 3 root    root     17 11月 29 17:11 systemd-private-2604ed43645f437fa349d97ce063f3d3-chronyd.service-Ekc0Zn
drwx------. 2 root    root      6 11月 29 17:11 vmware-root_1139-3988228457
-rw-------. 1 root    root      0 11月 29 17:06 yum.log
原文地址:https://www.cnblogs.com/mindzone/p/14057699.html