系列2:2、linux相关命令续

一、find命令

1、作用:用于在文件树中查找文件,并作出相应的处理
2、命令参数:
pathname:find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录
-print: find命令将匹配的文件输出到标准输出
-exec : find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为’command’ { } ;,注意{ }和\;之间的空格
-ok : 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行

3、命令选项:
-name: 按照文件名查找文件
-perm:按文件权限查找文件
-user: 按文件属主查找文件
-group:按照文件所属的组来查找文件
-type : 查找某一类型的文件,诸如:
b - 块设备文件
d - 目录
c - 字符设备文件
l - 符号链接文件
p - 管道文件
f - 普通文件
-size n :[c] |:查找文件长度为n块文件,带有c时表文件字节大小
-amin n :查找系统中最后N分钟访问的文件
-atime n :查找系统中最后n24小时访问的文件
-cmin n:查找系统中最后N分钟被改变文件状态的文件
-ctime n : 查找系统中最后n
24小时被改变文件状态的文件
-mmin n :查找系统中最后N分钟被改变文件数据的文件
-mtime n: 查找系统中最后n*24小时被改变文件数据的文件
-maxdepth n:最大查找目录深度
-prune: 选项来指出需要忽略的目录。在使用-prune选项时要当心,
因为如果你同时使用了-depth选项,那么-prune选项就会被find命令忽略
-newer : 如果希望查找更改时间比某个文件新但比另一个文件旧的所有文件,可以使用-newer选项
4、例:
(1)查找 48 小时内修改过的文件

[root@localhost ~]# find -atime -2

(2)在当前目录查找 以 .log 结尾的文件。 . 代表当前目录
在这里插入图片描述
(3)查找 /opt 目录下 权限为 777 的文件
在这里插入图片描述
(4)查找大于 1K 的文件
在这里插入图片描述
(5)查找等于 1000 字符的文件
在这里插入图片描述
5、-exec
-exec 参数后面跟的是 command 命令,它的终止是以 ; 为结束标志的,所以这句命令后面的分号是不可缺少的,考虑到各个系统中分号会有不同的意义,所以前面加反斜杠。{} 花括号代表前面find查找出来的文件名

(1)在当前目录中查找更改时间在10日以前的文件并删除它们(无提醒)
在这里插入图片描述
(2)当前目录中查找所有文件名以.log结尾、更改时间在0日以上的文件,并删除它们, 只不过在删除之前先给出提示。 按y键删除文件,按n键不删除
在这里插入图片描述
(3)用 exec 选项执行 cp 命令
在这里插入图片描述

二、chmod命令

Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其他。
1、作用: 用于改变 linux 系统文件或目录的访问权限。用它控制文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。

每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。可使用 ls -l test.txt 查找

2、权限范围:
u :目录或者文件的当前的用户
g :目录或者文件的当前的群组
o :除了目录或者文件的当前用户或群组之外的用户或者群组
a :所有的用户及群组

3、权限代号:
r :读权限,用数字4表示
w :写权限,用数字2表示
x : 执行权限,用数字1表示
— :删除权限,用数字0表示
s : 特殊权限

4、常用参数:
-c :当发生改变时,报告处理信息
-R :处理指定目录以及其子目录下所有文件
5、例
(1)使拥有者具有可读权限,并输出处理信息

在这里插入图片描述
(2)给 file 的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限
在这里插入图片描述
或者
在这里插入图片描述

三、chown命令

1、作用:chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户 ID;
组可以是组名或者组 ID;文件是以空格分开的要改变权限的文件列表,支持通配符
2、常用参数:

| user      | 新的文件拥有者的使用者 ID            |
| group     | 新的文件拥有者的使用者组(group)      |
| -c        | 显示更改的部分的信息                 |
| -f        | 忽略错误信息                         |
| -h        | 修复符号链接                         |
| -v        | 显示详细的处理信息                   |
| -R        | 处理指定目录以及其子目录下的所有文件 |
| --help    | 显示辅助说明                         |
| --version | 显示版本                             |

3、例:
(1)改变拥有者和群组 并显示改变信息
在这里插入图片描述
(2)改变文件群
在这里插入图片描述

四、tar 命令

1、作用:用来压缩和解压文件。tar 本身不具有压缩功能,只具有打包功能,有关压缩及解压是调用其它的功能来完成。
2、弄清两个概念:打包和压缩。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件
3、命令参数:

| -c   | 建立新的压缩文件               |
| -f   | 定压缩文件                     |
| -r   | 添加文件到已经压缩文件包中     |
| -u   | 添加改了和现有的文件到压缩包中 |
| -x   | 从压缩包中抽取文件             |
| -t   | 显示压缩文件中的内容           |
| -z   | 支持gzip压缩                   |
| -j   | 支持bzip2压缩                  |
| -Z   | 支持compress解压文件           |
| -v   | 显示操作过程                   |

4、例:
(1)将test.log test.sh全部打包成 tar 包

在这里插入图片描述
(2)将 /etc 下的所有文件及目录打包到指定目录或当前目录,并使用 gz 压缩
在这里插入图片描述

(3)查看刚打包的文件内容(一定加z,因为是使用 gzip 压缩的)
在这里插入图片描述
(4)要压缩打包 /home, /etc ,但不要 /home/mashibing ,只能针对文件,不能针对目录
在这里插入图片描述

五、date命令

1、作用:用来显示或设定系统的日期与时间
2、时间参数:

| %    | 印出 %                                           |
| %n   | 下一行                                             |
| %t   | 跳格                                               |
| %H   | 小时(00..23)                                       |
| %I   | 小时(01..12)                                       |
| %k   | 小时(0..23)                                        |
| %l   | 小时(1..12)                                        |
| %M   | 分钟(00..59)                                       |
| %p   | 显示本地 AM 或 PM                                  |
| %r   | 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M)    |
| %s   |19701100:00:00 UTC 到目前为止的秒数 |
| %S   |(00..61)                                         |
| %T   | 直接显示时间 (24 小时制)                           |
| %X   | 相当于 %H:%M:%S                                    |
| %Z   | 显示时区                                           |

3、日期参数

| %a   | 星期几 (Sun..Sat)                                        |
| %A   | 星期几 (Sunday..Saturday)                                |
| %b   | 月份 (Jan..Dec)                                          |
| %B   | 月份 (January..December)                                 |
| %c   | 直接显示日期与时间                                       |
| %d   |(01..31)                                              |
| %D   | 直接显示日期 (mm/dd/yy)                                  |
| %h   |%b                                                    |
| %j   | 一年中的第几天 (001..366)                                |
| %m   | 月份 (01..12)                                            |
| %U   | 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形) |
| %w   | 一周中的第几天 (0..6)                                    |
| %W   | 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形) |
| %x   | 直接显示日期 (mm/dd/yy)                                  |
| %y   | 年份的最后两位数字 (00.99)                               |
| %Y   | 完整年份 (0000..9999)                                    |

注意:
(1)若是不以加号作为开头,则表示要设定时间,而时间格式为 MMDDhhmm[[CC]YY][.ss],其中 MM 为月份,DD 为日,hh 为小时,mm 为分钟,CC 为年份前两位数字,YY 为年份后两位数字,ss 为秒数。
(2)使用权限:所有使用者。
(3)当不希望出现无意义的 0 时(比如说 1999/03/07),则可以在标记中插入 - 符号,比如说 date ‘+%-H:%-M:%-S’ 会把时分秒中无意义的 0 给去掉,像是原本的 08:09:04 会变为 8:9:4。另外,只有取得权限者(比如说 root)才能设定系统时间。
(4)当以 root 身分更改了系统时间之后,请记得以 clock -w 来将系统时间写入 CMOS 中,这样下次重新开机时系统时间才会持续抱持最新的正确值。
4、 常见参数

| -d        | 显示 datestr 中所设定的时间 (非系统时间) |
| --help    | 显示辅助讯息                             |
| -s        | 将系统时间设为 datestr 中所设定的时间    |
| -u        | 显示目前的格林威治时间                   |
| --version | 显示版本编号                             |

六、cal 命令

1、作用:用户显示公历(阳历)日历
2、参数

| -1   | 只显示当前月份(默认)     |
| -3   | 显示上个月、当月和下个月 |
| -s   | 周日作为一周第一天       |
| -m   | 周一用为一周第一天       |
| -j   | 输出儒略日               |
| -y   | 输出整年                 |
| -V   | 显示版本信息并退出       |
| -h   | 显示此帮助并退出         |

3、例
(1)显示指定年月日期
在这里插入图片描述
(2)显示2020年每个月日历
在这里插入图片描述

七、grep命令

作用:用于查找文件里符合条件的字符串
注意:如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为 -,则 grep 指令会从标准输入设备读取数据
2、全局正则表达式搜索,grep 的规则表达式

^               #锚定行的开始 如:'^grep'匹配所有以grep开头的行。 
$               #锚定行的结束 如:'grep$'匹配所有以grep结尾的行。 
.               #匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。  
*               #匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行。
.*              #一起用代表任意字符。  
[]              #匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep。 
[^]             #匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。  
\(..\)          #标记匹配字符,如'\(love\)',love被标记为1。   
\<              #锚定单词的开始,如:'\<grep'匹配包含以grep开头的单词的行。
\>              #锚定单词的结束,如'grep\>'匹配包含以grep结尾的单词的行。
x\{m\}          #重复字符x,m次,如:'0\{5\}'匹配包含5个o的行。 
x\{m,\}         #重复字符x,至少m次,如:'o\{5,\}'匹配至少有5个o的行。  
x\{m,n\}        #重复字符x,至少m次,不多于n次,如:'o\{5,10\}'匹配5--10个o的行。  
\w              #匹配文字和数字字符,也就是[A-Za-z0-9],如:'G\w*p'匹配以G后跟零个或多个文字或数字字符,然后是p。  
\W              #\w的反置形式,匹配一个或多个非单词字符,如点号句号等。  
\b              #单词锁定符,如: '\bgrep\b'只匹配grep。

3、常用参数:

| -A n | 显示匹配字符后n行                      |
| -B n | 显示匹配字符前n行                      |
| -C n | 显示匹配字符前后n行                    |
| -c   | 计算符合样式的列数                     |
| -i   | 忽略大小写                             |
| -l   | 只列出文件内容符合指定的样式的文件名称 |
| -f   | 从文件中读取关键词                     |
| -n   | 显示匹配内容的所在文件中行数           |
| -R   | 递归查找文件夹                         |

4、例
(1)查找指定进程
在这里插入图片描述
(2)查找指定进程个数
在这里插入图片描述
(3)从文件中读取关键词
在这里插入图片描述
(4)从文件夹中递归查找以.sh结尾的行,并只列出文件
在这里插入图片描述

八、ps命令

1、作用:用于显示当前进程 (process) 的状态
2、linux上进程有5种状态:

  1. 运行(正在运行或在运行队列中等待)
  2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)
  3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)
  4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)
  5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)

3、 ps 工具标识进程的5种状态码:
D 不可中断 uninterruptible sleep (usually IO)
R 运行 runnable (on run queue)
S 中断 sleeping
T 停止 traced or stopped
Z 僵死 a defunct (”zombie”) process

4、命令参数

| -A   | 显示所有进程               |
| a    | 显示所有进程               |
| -a   | 显示同一终端下所有进程     |
| c    | 显示进程真实名称           |
| e    | 显示环境变量               |
| f    | 显示进程间的关系           |
| r    | 显示当前终端运行的进程     |
| -aux | 显示所有包含其它使用的进程 |

5、例:
(1)显示当前所有进程环境变量及进程间关系
在这里插入图片描述
(2)显示当前所有进程
在这里插入图片描述

(3)与grep联用查找某进程
在这里插入图片描述

九、kill命令

1、 命令用于删除执行中的程序或工作
2、常用参数:

| -l   | 信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称 |
| -a   | 当处理当前进程时,不限制命令名和进程号的对应关系             |
| -p   | 指定kill 命令只打印相关进程的进程号,而不发送任何信号        |
| -s   | 指定发送信号                                                 |
| -u   | 指定用户                                                     |

3、例:
(1)先使用ps查找进程号,然后用kill杀掉
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值