常用系统工作命令详解:系统状态检测命令
全文命令分为以下6个模块:
1、常用系统工作命令
2、系统状态监测命令
3、工作目录切换命令
4、文本文件编辑命令
5、文件目录管理命令
6、打包压缩与搜索命令
在说具体命令之前,应当清楚linux命令的基本格式,如下:
以下内容为具体的命令解读:
一、常用系统工作命令
1、echo命令
2、date命令
3、reboot命令(相当于windows的重启)
4、poweroff命令(相当于windows的死机)
5、wget命令
wget命令用于在终端中下载网路文件,格式为“wget[参数]下载地址”。
6、ps命令
ps命令用于查看系统中的进程状态,格式为“ps[参数]”。
常用用法:psaux或则pslax
7、top命令(相当于window中的任务管理器)
top命令用于动态地监视进程活动与系统负载等信息,默认每10秒刷新一次。
8、pidof命令
pidof命令用于查询某个指定服务进程的PID值,格式为“pidof[参数][服务名称]”。
9、kill命令
kill命令用于中止某个指定PID的服务进程,格式为“kill[参数][进程PID]”。
10、killall命令
一般来讲,复杂软件的服务程序会有多个进程协同为用户提供服务,假如挨个去结束这种比较麻烦,此时可以使用killall命令来批量结束某个服务程序带有的全部进程。下边以httpd服务程序为例,来结束其全部进程。
二、系统状态监测命令
1、ifconfig命令
此命令被拿来获取网路插口配置信息并对此进行更改。
2、uname命令
uname命令用于查看系统内核与系统版本等信息,格式为“uname[-a]”。
在使用uname命令时,通常会固定搭配上-a参数来完整地查看当前系统的内核名称、主
机名、内核发行版本、节点名、系统时间、硬件名称、硬件平台、处理器类型以及操作系统名称等信息。
3、uptime命令
uptime用于查看系统的负载信息,格式为uptime。
uptime命令真的很棒,它可以显示当前系统时间、系统已运行时间、启用终端数目以及平均负载值等信息。平均负载值指的是系统在近来1分钟、5分钟、15分钟内的压力情况(下边加粗的信息部份);负载值越低越好,尽量不要常年超过1,在生产环境中不要超过5。
4、free命令
free用于显示当前系统中显存的使用量信息,格式为“free[-h]”。
为了保证Linux系统不会因资源用尽而忽然宕机,运维人员须要时刻关注显存的使用量。在使用free命令时,可以结合使用-h参数以更人性化的形式输出当前显存的实时使用量信息。
表2-8所示为笔记本上执行free-h命令以后的输出信息。须要注意的是,输出信息中的英文注释是作者自行添加的内容,实际输出时没有相应的参数解释。
5、who命令
who用于查看当前登入主机的用户终端信息,格式为“who[参数]”。
这三个简单的字母可以快速显示出所有正在登陆本机的用户的名称以及她们正在开启的
终端信息。
6、last命令
last命令用于查看所有系统的登陆记录,格式为“last[参数]”。
使用last命令可以查看本机的登陆记录。而且,因为这种信息都是以日志文件的方式保存在系统中,因而黑客可以很容易地对内容进行篡改。千万不要单纯以该命令的输出信息而判定系统有无被恶意入侵!
7、history命令
用于显示历史执行过的命令,格式为“history[-c]”。
history命令应当是作者最喜欢的命令。执行history命令能显示出当前用户在本地计算机中执行过得近来1000条命令记录。假如认为1000不够用,还可以自定义/etc/profile文件中的HISTSIZE变量值。在使用history命令时,假如使用-c参数则会清空所有的命令历史记录。
还可以使用“!编码数字”的形式来重复执行某一次的命令。反正,history命令有好多有趣的玩法等待您去开发。
历史命令会被保存到用户家目录中的.bashhistory文件中。Linux系统中以点(.)开头的文件均代表隐藏文件,这种文件大多数为系统服务文件,可以用cat命令查看其文件内容。
要清空当前用户在本机上执行的Linux命令历史记录信息,可执行如下命令:
三、工作目录切换命令
1、pwd命令
pwd命令用于显示用户当前所处的工作目录,格式为“pwd[选项]”。
2、cd命令
cd命令用于切换工作路径,格式为“cd[目录名称]”。这个命令应当是最常用的一个Linux命令了。可以通过cd命令迅速、灵活地切换到不同的工作目录。不仅常见的切换目录形式,还可以使用“cd-”命令返回到上一次所处的目录使用“cd..”命令步入上级目录以及使用“cd~”命令切换到当前用户的家目录,亦或使用cd~username”切换到其他用户的家目录。比如suse linux 下载,可以使用cd路径”的形式切换进/etc目录中:
同样的道理,可使用下列命令切换到/bin目录中:
此时,要返回到上一次的目录(即/etc目录),可执行如下命令:
还可以通过下边的命令快速切换到用户的家目录:
3、ls命令
ls命令用于显示目录中的文件信息,格式为“ls[选项][文件]”。
所处的工作目录不同,当前工作目录下的文件肯定也不同。使用ls命令的““-a”参数见到全部文件(包括隐藏文件),使用““-l”参数可以查看文件的属性、大小等详尽信息。将这两个参数整合以后,再执行ls命令即可查看当前目录中的所有文件并输出这种文件的属性信息:
假如想要查看目录属性信息,则须要额外添加一个-d参数。诸如,可使用如下命令查看
/etc目录的权限与属性信息:
四、文本文件编辑命令
Linux系统中“一切都是文件”,而对服务程序进行配置自然也就是编辑程序的配置文件。假如不能熟练地查阅系统或服务的配置文件,那之后工作时可就真的要难堪了。
1、cat命令
cat命令用于查看纯文本文件(内容较少的),格式为“cat[选项][文件]”。
Linux系统中有多个用于查看文本内容的命令,每位命令都有自己的特性,例如这个cat命令就是用于查看内容较少的纯文本文件的。cat这个命令也挺好记,由于cat在英文中是“猫”的意思,小仓鼠是不是给您一种乖巧、可爱的觉得呢?假如在查看文本内容时还想顺便显示行号的话,不妨在cat命令前面追加一个-n参数:
2、more命令
more命令用于查看纯文本文件(内容较多的),格式为“more[选项]文件”。
假如须要阅读短篇小说或则特别长的配置文件,这么“小狗狗”可就真的不适宜了。由于一旦使用cat命令阅读短篇的文本内容,信息都会在屏幕上快速翻滚,造成自己还没有来得及看见,内容就早已翻篇了。因而对于短篇的文本内容,推荐使用more命令来查看。more命令会在最下边使用比率的方式来提示您早已阅读了多少内容。还可以使用空格键或回车键向上翻页:
3、head命令
head命令用于查看纯文本文档的前N行,格式为“head[选项][文件]”。
在阅读文本内容时,谁也无法保证会根据从头到尾的次序往下看完整个文件。若果只想查看文本中前20行的内容,该如何办呢?head命令可以派上用场了:
4、tail命令
tail命令用于查看纯文本文档的后N行或持续刷新内容,格式为“tail[选项][文件]”。我们可能就会遇见另外一种情况,例如须要查看文本内容的最后20行,这时就须要用到tail命令了。tail命令的操作方式与head命令十分相像,只须要执行“tail-n20文件名”命令就可以达到这样的疗效。tail命令最强大的功能是可以持续刷新一个文件的内容,当想要实时查看最新日志文件时,这非常有用,此时的命令格式为“tail-f文件名”:
5、tr命令
tr命令用于替换文本文件中的字符,格式为“tr[原始字符][目标字符]”。
在好多时侯,我们想要快速地替换文本中的一些词汇,又或则把整个文本内容都进行替换,假如进行手工替换,难免工作量太大,尤其是须要处理大批量的内容时,进行手工替换更是不现实。这时,就可以先使用cat命令读取待处理的文本,之后通过管线符把这种文本内容传递给tr命令进行替换操作即可。比如,把某个文本内容中的中文全部替换为小写:
6、wc命令
wc命令用于统计指定文本的行数、字数、字节数,格式为“wc[参数]文本”。说起这个命令,总有同学会联想到一种公共设施,虽然这二者毫无关联。
Linux系统中的wc命令用于统计文本的行数、字数、字节数等。假如为了便捷自己记住这个命令的作用,也可以联想到上公厕时好无趣,无趣到数完了手中的入厕读物上有多少行字。
wc的参数以及相应的作用如表2-10所示。
在Linux系统中,passwd是用于保存系统帐户信息的文件,要统计当前系统中有多少个
用户,可以使用下边的命令来进行查询linux返回上一层命令,是不是很神奇:
7、stat命令
stat命令用于查看文件的具体储存信息和时间等信息,格式为“stat文件名称”。
stat命令可以用于查看文件的储存信息和时间等信息,命令statanaconda-ks.cfg会显示出文件的三种时间状态(已加粗):Access、Modify、Change。这三种时间的区别将在下边的touch命令中详尽解读:
8、diff命令
diff命令用于比较多个文本文件的差别,格式为“diff[参数]文件”。
在使用diff命令时,除了可以使用--brief参数来确认两个文件是否不同,还可以使用-c参数来详尽比较出多个文件的差别之处,这绝对是判定文件是否被篡改的有力利器。诸如,先使用cat命令分别查看diffA.txt和diffB.txt文件的内容,之后进行比较:
接出来使用diff--brief命令显示比较后的结果linux系统好用吗,判定文件是否相同:
最后使用带有-c参数的diff命令来描述文件内容具体的不同:
五、文件目录管理命令
1、touch命令
touch命令用于创建空白文件或设置文件的时间,格式为“touch[选项][文件]”。
在创建空白的文本文件方面,这个touch命令相当简捷,简捷到没有必要铺开去讲。
例如,touchlinuxprobe命令可以创建出一个名为linuxprobe的空白文本文件。对touch命令来讲,有难度的操作主要是彰显在设置文件内容的更改时间(mtime)、文件权限或属性的修改时间(ctime)与文件的读取时间atime)前面。touch命令的参数及其作用如表2-11所示。
接出来,我们先使用ls命令查看一个文件的更改时间,之后更改这个文件,最后再通过touch命令把更改后的文件时间设置成更改之前的时间(好多黑客就是这样做的呢):
2、mkdir命令
mkdir命令用于创建空白的目录linux返回上一层命令,格式为“mkdir[选项]目录”。
在Linux系统中,文件夹是最常见的文件类型之一。不仅能创建单个空白目录外,mkdir命令还可以结合-p参数来递归创建出具有嵌套叠层关系的文件目录。
3、cp命令
cp命令用于复制文件或目录,格式为“cp[选项]源文件目标文件”。
你们对文件复制操作应当不陌生,在Linux系统中,复制操作具体分为3种情况:
1、如果目标文件是目录,则会把源文件复制到该目录中;
2、如果目标文件也是普通文件,则会寻问是否要覆盖它;
3、如果目标文件不存在,则执行正常的复制操作。
cp命令的参数及其作用如表2-12所示。
接出来,使用touch创建一个名为install.log的普通空白文件,之后将其复制为一份名为x.log的备份文件,最后再使用ls命令查看目录中的文件:
4、mv命令
mv命令用于剪切文件或将文件重命名,格式为“mv[选项]源文件[目标路径|目标文件名]”。
剪切操作不同于复制操作,由于它会默认把源文件删掉掉,只保留剪切后的文件。若果在同一个目录中对一个文件进行剪切操作,虽然也就是对其进行重命名:
5、rm命令
rm命令用于删掉文件或目录,格式为“rm[选项]文件”。
在Linux系统中删掉文件时,系统会默认向您寻问是否要执行删掉操作,倘若不想总是听到这些反复的确认信息,可在rm命令后跟上-f参数来强制删掉。另外,想要删掉一个目录,须要在rm命令前面一个-r参数才可以,否则删掉不掉。我们来尝试删掉后面创建的install.log和linux.log文件:
6、dd命令
dd命令用于根据指定大小和个数的数据块来复制文件或转换文件,格式为“dd[参数]”。
dd命令是一个比较重要并且比较有特色的一个命令,它还能让用户根据指定大小和个数的数据块来复制文件的内容。dd命令的参数及其作用如下表。
比如我们可以用dd命令从/dev/zero设备文件中取出一个大小为560MB的数据块,之后保存成名为560file的文件。在理解了这个命令后,之后才能随便创建任意大小的文件了:
dd命令的功能也绝除了限于复制文件如此简单。倘若您想把硬盘设备中的光碟制做成iso格式的镜像文件,在Windows系统中须要利用于第三方软件能够做到,但在Linux系统中可以直接使用dd命令来压制出光碟镜像文件,将它弄成一个可立刻使用的iso镜像:
7、file命令
file命令用于查看文件的类型,格式为“file文件名”。
在Linux系统中,因为文本、目录、设备等所有那些一切都总称为文件,而我们又不能
单凭后缀就晓得具体的文件类型,这时就须要使用file命令来查看文件类型了。
六、打包压缩与搜索命令
人们越来越倾向于传输压缩格式的文件,缘由是压缩文件容积小,在网速相同的情况下,传输时间短。下边将学习怎样在Linux系统中对文件进行打包压缩与解压,以及让用户基于关键词在文本文件中搜索相匹配的信息、在整个文件系统中基于指定的名称或属性搜索特定文件。
1、tar命令
tar命令用于对文件进行打包压缩或解压,格式为“tar[选项][文件]”。
在Linux系统中,常见的文件格式比较多,其中主要使用的是.tar或.tar.gz或.tar.bz2格式,我们不用害怕格式太多而记不住,虽然这种格式大部份都是由tar命令来世成的。tar命令的参数及其作用如表2-14所示。
首先,-c参数用于创建压缩文件,,-x参数用于解压文件,因而这两个参数不能同时使用。
其次,,-z参数指定使用Gzip格式来压缩或解压文件,,-j参数指定使用bzip2格式来压缩或解压文件。用户使用时则是依照文件的后缀来决定应使用何种格式参数进行解压。在执行个别压缩或解压操作时,可能须要耗费数个小时,假如屏幕仍然没有输出,您一方面不好判定打包的进度情况,另一方面也会怀疑笔记本掉线了,因而特别推荐使用-v参数向用户不断显示压缩或解压的过程。-C参数用于指定要解压到那个指定的目录。-f参数非常重要,它必须放在参数的最后一位,代表要压缩或解压的软件包名称。
通常使用“tar-czvf压缩包名称.tar.gz要打包的目录”命令把指定的文件进行打包压缩;相应的解压命令为“tar-xzvf压缩包名称.tar.gz”。下边我们来挨个演示下打包压缩与解压的操作。先使用tar命令把/etc目录通过gzip格式进行打包压缩,并把文件命名为etc.tar.gz
接出来将打包后的压缩包文件指定解压到/root/etc目录中(先使用mkdir命令来创建/root/etc目录):
2、grep命令
grep命令用于在文本中执行关键词搜索,并显示匹配的结果,格式为“grep[选项][文件]”。
grep命令的参数及其作用如下表。
grep命令是用途最广泛的文本搜索匹配工具,即使有好多参数,并且大多数基本上都用不到。我们在这儿只讲两个最最常用的参数:-n参数拿来显示搜索到信息的行号;;-v参数用于反选信息(即没有包含关键词的所有信息行)。这两个参数几乎能完成日后80%的工作须要,至于其他上百个参数,虽然之后在工作期间遇见了,再使用mangrep命令查询也来得及。在Linux系统中,,/etc/passwd文件是保存着所有的用户信息,而一旦用户的登陆终端被设置成/sbin/nologin,则不再容许登陆系统,因而可以使用grep命令来查找出当前系统中不容许登陆系统的所有用户信息:
3、find命令
find命令用于根据指定条件来查找文件,格式为“find[查找路径]找寻条件操作”。
“Linux系统中的一切都是文件”,接出来就要见证这句话的份量了。
在Linux系统中,搜索工作通常都是通过find命令来完成的,它可以使用不同的文件特点作为找寻条件(如文件名、大小、修改时间、权限等信息),一旦匹配成功则默认将信息显示到屏幕上。find命令的参数以及作用如表2-16所示。
这儿须要重点讲解一下-exec参数重要的作用。这个参数用于把find命令搜索到的结果交由紧跟其后的命令作进一步处理,它非常类似于管线符技术,但是因为find命令对参数的特殊要求,因而即使exec是长格式方式,但仍然只须要一个加号(-)。
依照文件系统层次标准(FilesystemHierarchyStandard)合同Linux系统中的配置文件会保存到/etc目录中。假如要想获取到该目录中所有以host开头的文件列表,
可以执行如下命令:
假如要在整个系统中搜索权限中包括SUID权限的所有文件,只需使用-4000即可: