“红帽认证”考试,这些知识点必须掌握!
  KDk97yxRQlQU 2023年11月02日 46 0

话不多说直接上干货,本篇文章适用于备考Linux红帽认证的同学。 


“红帽认证”考试,这些知识点必须掌握!_find命令

man命令中常用按键以及作用

“红帽认证”考试,这些知识点必须掌握!_find命令_02


man命令中帮助信息的结构以及意义

“红帽认证”考试,这些知识点必须掌握!_find命令_03



reboot命令

reboot命令用于重启系统,输入该命令后按回车键执行即可。


[root@linuxprobe ~]# reboot


poweroff命令

poweroff命令用于关闭系统,输入该命令后按回车键执行即可。


与上面相同,该命令也会涉及硬件资源的管理权限,因此最好还是以root管理员的身份来关闭电脑,其命令如下:


[root@linuxprobe ~]# poweroff


nice命令

nice命令用于调整进程的优先级,语法格式为“nice优先级数字 服务名称”。


在top命令输出的结果中,PR和NI值代表的是进程的优先级,数字越低(取值范围是-20~19),优先级越高。在日常的生产工作中,可以将一些不重要进程的优先级调低,让紧迫的服务更多地利用CPU和内存资源,以达到合理分配系统资源的目的。


例如将bash服务的优先级调整到最高:


[root@linuxprobe ~]# nice -n -20 bash

[root@linuxprobe ~]#


pidof命令

pidof命令用于查询某个指定服务进程的PID号码值,语法格式为“pidof [参数] 服务名称”。


每个进程的进程号码值(PID)是唯一的,可以用于区分不同的进程。


例如,执行如下命令来查询本机上sshd服务程序的PID:


[root@linuxprobe ~]# pidof sshd

2156


kill命令

kill命令用于终止某个指定PID值的服务进程,语法格式为“kill [参数] 进程的PID”。


使用kill命令把上面用pidof命令查询到的PID所代表的进程终止掉,其命令如下所示。


这种操作的效果等同于强制停止sshd服务。


[root@linuxprobe ~]# kill 2156

但有时系统会提示进程无法被终止,此时可以加参数-9,表示最高级别地强制杀死进程:


[root@linuxprobe ~]# kill -9 2156


killall命令

killall命令用于终止某个指定名称的服务所对应的全部进程,语法格式为“killall [参数] 服务名称”。


通常来讲,复杂软件的服务程序会有多个进程协同为用户提供服务,如果用kill命令逐个去结束这些进程会比较麻烦,此时可以使用killall命令来批量结束某个服务程序带有的全部进程。


下面以httpd服务程序为例,来结束其全部进程。


[root@linuxprobe ~]# pidof httpd

13581 13580 13579 13578 13577 13576

[root@linuxprobe ~]# killall httpd

[root@linuxprobe ~]# pidof httpd

[root@linuxprobe ~]#


查找定位文件命令

1.pwd命令

pwd命令用于显示用户当前所处的工作目录,英文全称为“print working directory”,输入该命令后按回车键执行即可。


使用pwd命令查看当前所处的工作目录:


[root@linuxprobe etc]# pwd

/etc

2.cd命令

cd命令用于切换当前的工作路径,英文全称为“change directory”,语法格式为“cd [参数] [目录]”。


这个命令应该是最常用的一个Linux命令了。可以通过cd命令迅速、灵活地切换到不同的工作目录。


使用“cd -”命令返回到上一次所处的目录,


使用“cd..”命令进入上级目录


使用“cd~”命令切换到当前用户的家目录,


使用“cd~username”命令切换到其他用户的家目。


3.ls命令

ls命令用于显示目录中的文件信息,英文全称为“list”,语法格式为“ls [参数] [文件名称]”。


所处的工作目录不同,当前工作目录下能看到的文件肯定也不同。


使用ls命令的-a参数可以看到全部文件(包括隐藏文件),使用-l参数可以查看文件的属性、大小等详细信息。


将这两个参数整合之后,再执行ls命令即可查看当前目录中的所有文件并输出这些文件的属性信息:


[root@linuxprobe ~]# ls -al

total 48

dr-xr-x---. 15 root root 4096 Jul 24 06:33 .

dr-xr-xr-x. 17 root root 224 Jul 21 05:04 ..

-rw-------. 1 root root 1407 Jul 21 05:09 anaconda-ks.cfg

-rw-------. 1 root root 335 Jul 24 06:33 .bash_history

-rw-r--r--. 1 root root 18 Aug 13 2018 .bash_logout

-rw-r--r--. 1 root root 176 Aug 13 2018 .bash_profile

-rw-r--r--. 1 root root 176 Aug 13 2018 .bashrc

drwx------. 10 root root 230 Jul 21 05:19 .cache

drwx------. 11 root root 215 Jul 24 06:27 .config

-rw-r--r--. 1 root root 100 Aug 13 2018 .cshrc

drwx------. 3 root root 25 Jul 21 05:16 .dbus

drwxr-xr-x. 2 root root 6 Jul 21 05:19 Desktop

drwxr-xr-x. 2 root root 6 Jul 21 05:19 Documents

drwxr-xr-x. 2 root root 6 Jul 21 05:19 Downloads

-rw-------. 1 root root 16 Jul 21 05:19 .esd_auth

-rw-------. 1 root root 620 Jul 24 06:26 .ICEauthority

-rw-r--r--. 1 root root 1562 Jul 21 05:18 initial-setup-ks.cfg

drwx------. 3 root root 19 Jul 21 05:19 .local

drwxr-xr-x. 2 root root 6 Jul 21 05:19 Music

drwxr-xr-x. 2 root root 6 Jul 21 05:19 Pictures

drwxr-----. 3 root root 19 Jul 21 05:19 .pki

drwxr-xr-x. 2 root root 6 Jul 21 05:19 Public

-rw-r--r--. 1 root root 129 Aug 13 2018 .tcshrc

drwxr-xr-x. 2 root root 6 Jul 21 05:19 Templates

drwxr-xr-x. 2 root root 6 Jul 21 05:19 Videos

-rw-------. 1 root root 3235 Jul 24 06:32 .viminfo

4.tree命令

tree命令用于以树状图的形式列出目录内容及结构,输入该命令后按回车键执行即可。


虽然ls命令可以很便捷地查看目录内有哪些文件,但无法直观地获取到目录内文件的层次结构。比如,假如目录A中有个B,B中又有个C,那么ls命令就只能看到最外面的A目录,显然有些时候这不太够用。tree命令则能够以树状图的形式列出目录内所有文件的结构。


我们来对比一下两者的区别。


使用ls命令查看目录内的文件:


[root@linuxprobe ~]# ls

A Desktop Downloads Music Public Videos

anaconda-ks.cfg Documents initial-setup-ks.cfg Pictures Templates

5.find命令

find命令用于按照指定条件来查找文件所对应的位置,语法格式为“find [查找范围] 寻找条件”。


在Linux系统中,搜索工作一般都是通过find命令来完成的,它可以使用不同的文件特性作为寻找条件(如文件名、大小、修改时间、权限等信息),一旦匹配成功则默认将信息显示到屏幕上。


-exec参数的重要作用。这个参数用于把find命令搜索到的结果交由紧随其后的命令作进一步处理。它十分类似于管道符技术,并且由于find命令对参数有特殊要求,因此虽然exec是长格式形式,但它的前面依然只需要一个减号(-)。


根据文件系统层次标准(Filesystem Hierarchy Standard)协议,Linux系统中的配置文件会保存到/etc目录。如果要想获取该目录中所有以host开头的文件列表,可以执行如下命令:


[root@linuxprobe ~]# find /etc -name "host*" -print

/etc/host.conf

/etc/hosts

/etc/hosts.allow

/etc/hosts.deny

/etc/avahi/hosts

/etc/hostname

如果要在整个系统中搜索权限中包括SUID权限的所有文件,只需使用-4000即可:


[root@linuxprobe ~]# find / -perm -4000 -print

/usr/bin/fusermount

/usr/bin/chage

/usr/bin/gpasswd

/usr/bin/newgrp

/usr/bin/umount

/usr/bin/mount

/usr/bin/su

/usr/bin/pkexec

/usr/bin/crontab

/usr/bin/passwd

………………省略部分输出信息………………

进阶实验:


在整个文件系统中找出所有归属于linuxprobe用户的文件并复制到/root/findresults目录中。该实验的重点是“-exec {} \;”参数,其中的{}表示find命令搜索出的每一个文件,并且命令的结尾必须是“\;”。完成该实验的具体命令如下:


[root@linuxprobe ~]# find / -user linuxprobe -exec cp -a {} /root/findresults/ \;


6.locate命令

locate命令用于按照名称快速搜索文件所对应的位置,语法格式为“locate文件名称”。


使用find命令进行全盘搜索虽然更准确,但是效率有点低。如果仅仅是想找一些常见的且又知道大概名称的文件,不如试试locate命令。在使用locate命令时,先使用updatedb命令生成一个索引库文件,这个库文件的名字是/var/lib/mlocate/mlocate.db,后续在使用locate命令搜索文件时就是在该库中进行查找操作,速度会快很多。


第一次使用locate命令之前,记得先执行updatedb命令来生成索引数据库,然后再进行查找:


[root@linuxprobe ~]# updatedb 

[root@linuxprobe ~]# ls -l /var/lib/mlocate/mlocate.db

-rw-r-----. 1 root slocate 2945917 Sep 13 17:54 /var/lib/mlocate/mlocate.db

使用locate命令搜索出所有包含“whereis”名称的文件所在的位置:


[root@linuxprobe ~]# locate whereis

/usr/bin/whereis

/usr/share/bash-completion/completions/whereis

/usr/share/man/man1/whereis.1.gz

7.whereis命令

whereis命令用于按照名称快速搜索二进制程序(命令)、源代码以及帮助文件所对应的位置,语法格式为“whereis 命令名称”。


简单来说,whereis命令也是基于updatedb命令所生成的索引库文件进行搜索,它与locate命令的区别是不关心那些相同名称的文件,仅仅是快速找到对应的命令文件及其帮助文件所在的位置。


下面使用whereis命令分别查找出ls和pwd命令所在的位置:


[root@linuxprobe ~]# whereis ls

ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz

[root@linuxprobe ~]# whereis pwd

pwd: /usr/bin/pwd /usr/share/man/man1/pwd.1.gz /usr/share/man/man1p/pwd.1p.gz

8.which命令

which命令用于按照指定名称快速搜索二进制程序(命令)所对应的位置,语法格式为“which 命令名称”。


which命令是在PATH变量所指定的路径中,按照指定条件搜索命令所在的路径。也就是说,如果我们既不关心同名文件(find与locate),也不关心命令所对应的源代码和帮助文件(whereis),仅仅是想找到命令本身所在的路径,那么这个which命令就太合适了。下面查找一下locate和whereis命令所对应的路径:


[root@linuxprobe ~]# which locate

/usr/bin/locate

[root@linuxprobe ~]# which whereis

/usr/bin/whereis






一眨眼一年又过去了


本期618年中活动又开始啦


“红帽认证”考试,这些知识点必须掌握!_红帽_04


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  6YY0QMPUXEwu   2023年12月10日   29   0   0 linux网卡
  Ex81gqy3LOX7   2023年12月07日   19   0   0 linux
  nIt0XG0acU8j   2023年12月11日   29   0   0 linuxhtop
  nIt0XG0acU8j   2023年12月09日   33   0   0 linuxsort
KDk97yxRQlQU