经常使用系统工做命令

echo命令用于在终端显示字符串或输出变量提取后的值,格式为:“echo [字符串 | $变量]”。html

将指定字符串输出到终端屏幕:linux

[root@linuxprobe ~]# echo Linuxprobe.Com
Linuxprobe.Com

使用$变量的方式提取变量值并输出到屏幕:缓存

[root@linuxprobe ~]# echo $SHELL
/bin/bash

date命令用于显示及设置系统的时间或日期,格式为:"date [选项] [+指定的格式]"。性能优化

强大的date命令只需键入以"+"号开头的参数便可按照指定格式来输出系统的时间或日期,这样平常工做时我们即可以将打包数据的备份命令与指定格式输出的时间信息结合到一块儿,使得我们能够更加便捷的区分每一个文件的备份时间啦,date命令常见的格式以下:bash

参数 做用
%t 跳格[TAB键]
%H 小时(00-23)
%I 小时(01-12)
%M 分钟(00-59)
%S 秒(00-60)
%X 至关于%H:%M:%S
%Z 显示时区
%p 显示本地AM或PM
%A 星期几 (Sunday-Saturday)
%a 星期几 (Sun-Sat)
%B 完整月份 (January-December)
%b 缩写月份 (Jan-Dec)
%d 日(01-31)
%j 一年中的第几天(001-366)
%m 月份(01-12)
%Y 完整的年份


按照默认的格式查看当前的系统时间:网络

[root@linuxprobe ~]# date
Mon Aug 24 16:11:23 CST 2016

按照"年-月-日 小时:分钟:秒"的格式查看当前的系统时间:app

[root@linuxprobe ~]# date "+%Y-%m-%d %H:%M:%S"
2016-08-24 16:29:12

设置当前的系统时间为2016年9月1日8点30分:ssh

[root@linuxprobe ~]# date -s "20160901 8:30:00"
Tue Sep 1 08:30:00 CST 2016

再次按照默认的格式查看当前的系统时间:ide

[root@linuxprobe ~]# date
Tue Sep 1 08:30:01 CST 2016

查看今天是一年中的第几天:性能

[root@linuxprobe ~]# date "+%j"
245

reboot命令用于重启系统,格式为:"reboot"。

重启计算机这种操做会涉及到对硬件资源的管理权限,所以默认只能使用root用户来重启您的电脑:

[root@linuxprobe ~]# reboot

poweroff命令用于关闭系统,格式为:"poweroff"。

关机命令也同理,默认只有root用户才能够关闭您的电脑:

[root@linuxprobe ~]# poweroff

wget命令用于在终端中下载网络文件,格式为:“wget [参数] 下载地址”。

若是这是您在第一次读《Linux就该这么学》这本书而且暂时尚未对Linux系统的管理经验,那么切记不要急于求成,此次只须要看下wget命令的演示过程便可,我们将在后面的章节中逐步学习完Linux系统的管理方法,等您学习会了网卡的配置方法后再回来作这个实验吧,从本站的资源库中下载RHEL7系统镜像:

参数 做用
-b 后台下载模式。
-O 下载到指定目录。
-t 最大尝试次数。
-c 断点续传
-p 下载页面内全部资源,包括图片、视频等。
-r 递归下载


[root@linuxprobe ~]# wget http://down.linuxprobe.com/Tools/RHEL-server-7.0-x86_64-LinuxProbe.Com.iso
--2016-08-24 18:25:24-- http://down.linuxprobe.com/Tools/RHEL-server-7.0-x86_64-LinuxProbe.Com.iso
Resolving www.linuxprobe.com... 106.185.25.197
Connecting to www.linuxprobe.com|106.185.25.197|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3743416320 (3.5G) [application/octet-stream]
Saving to: 'RHEL-server-7.0-x86_64-LinuxProbe.Com.iso'
100%[====================================>] 3,743,416,320 1.82M/in 32m 27s
2016-08-24 18:57:51 (1.83 MB/s) - 'RHEL-server-7.0-x86_64-LinuxProbe.Com.iso' saved [3743416320/3743416320]

递归下载《Linux就该这么学》的整站页面与全部资料,下载完成后会自动保存到当前目录中名字为"www.linuxprobe.com"的目录中:

[root@linuxprobe ~]# wget -r -p http://www.linuxprobe.com
--2016-08-24 19:31:41-- http://www.linuxprobe.com/
Resolving www.linuxprobe.com... 106.185.25.197
Connecting to www.linuxprobe.com|106.185.25.197|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: `www.linuxprobe.com/index.html'
………………省略下载过程………………

ps命令用于查看系统中的进程状态,格式为:“ps [参数]”,一样搭配的参数以下:

当您第一次执行这个命令时估计要惊呆下,这么多输出值怎么看的过来?其实日常我们会将ps命令与管道符来结合使用,用于来抓取到某个指定服务进程所对应的PID号码,而常见的ps命令参数包括有:

参数 做用
-a 显示全部的进程(包括其余用户的)
-u 用户以及其余详细信息
-x 显示没有控制终端的进程


Linux系统中时刻运行着许许多多的进程,若是可以合理的管理它们,绝对有益于系统的性能优化,Linux系统中进程最多见的5种不一样的状态是运行、中断、不可中断、僵死与中止,它们的特性分别是:

R(运行):正在运行或在运行队列中等待。

S(中断):休眠中, 在等待某个条件的造成或接受到信号。

D(不可中断):收到信号不唤醒和不可运行, 进程必须等待直到有中断发生。

Z:(僵死):进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放。

T:(中止):进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后中止运行。

当执行"ps aux"命令后一般会看到下面格式的进程状态,表格中只是列举了部分输出值,并且正常的输出值中不包括中文注释部分:

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
进程的全部者 进程ID号 运算器占用率 内存占用率 虚拟内存使用量(单位是KB) 占用的固定内存量(单位是KB) 所在终端 进程状态 被启动的时间 实际使用CPU的时间 命令名称与参数
root 1 0.0 0.4 53684 7628 ? Ss 07:22 0:02 /usr/lib/systemd/systemd
root 2 0.0 0.0 0 0 ? S 07:22 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 07:22 0:00 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< 07:22 0:00 [kworker/0:0H]
root 7 0.0 0.0 0 0 ? S 07:22 0:00 [migration/0]


top命令用于动态的监视进程活动与系统负载等信息,格式为:“top”。

这个top命令可真的是太厉害了,彻底能够比喻成是“强化版的Windows任务管理器”,运行界面如图2-5所示:

第2章 新手必须掌握的Linux命令。第2章 新手必须掌握的Linux命令。

图2-5 top命令的执行界面

前面的五行为系统总体的统计信息,下面我们来逐行的讲解:

1行:系统时间,运行时间,登录用户数,系统负载(分别为1分钟、5分钟、15分钟的平均值)。

2行:进程总数,运行中的,睡眠中的,中止的,僵死的。

3行:用户占用资源,系统内核占用资源,改变过优先级的进程,空闲的资源,等待输入输出的时间。

此行数据均为CPU数据并以百分比格式显示,例如"99.2 id"意味着有99.2%的CPU资源正在空闲中。

4行:物理内存总量,使用量,空闲量,做为内核缓存的内存量。

5行:虚拟内存总量,使用量,空闲量,已被提早加载的内存数据。

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

PID值是区别每一个进程的号码,在不一样的计算机上运行相同的服务程序都不多会得到一样值的PID号码,例如查询本机sshd服务程序的PID号码值:

[root@linuxprobe ~]# pidof sshd
2156

kill命令用于终止某个指定PID号码的进程,格式为:“kill [参数] [进程PID号]”。

我们来动手将上面pidof命令查询到的PID号码给终止掉吧,这边做用等同于将sshd服务强制中止。

[root@linuxprobe ~]# kill 2156

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

通常大型软件的服务程序一般都会有数个进程协同为其提供服务,那么若是逐个去结束PID号码又实在麻烦,所以即可以使用killall命令来批量结束某个服务程序带有的所有进程,例如结束掉网络服务的所有进程,下面我们以httpd服务程序为例,默认您的RHEL7系统未安装它,因此此时只需看操做过程和结果便可:

[root@linuxprobe ~]# pidof httpd
13581 13580 13579 13578 13577 13576
[root@linuxprobe ~]# killall httpd
[root@linuxprobe ~]# pidof httpd
[root@linuxprobe ~]#

平时在系统终端中执行一个命令后若是想当即的中止它,您能够同时按下系统组合键"Ctrl+c",这样命令的进程将会当即被终止,是比较经常使用的方法之一。或者有些命令在执行时会不断的在屏幕上输出信息,影响到我们继续输入命令了,此时即可以在执行这条命令前,将这段命令的最后面添加个"&"符号,那么从一开始执行该命令就会是在后台执行。

相关文章
相关标签/搜索