常用系统工作命令
echo
命令描述:echo命令用于在终端输出字符串或变量提取后的值。 命令格式:echo [字符串 | $变量] 命令用法示例:
显示普通字符串
显示变量
首先在shell环境中定义一个临时变量name。
export name="Tom"
使用echo命令将变量name的值显示到终端。
echo $name
输出结果:
显示结果定向至文件
- 以下命令会将文本This is a test text.输出重定向到文件test.txt中,如果文件已存在,将会覆盖文件内容,如果不存在则创建。其中>符号表示输出重定向。
echo "This is a test text." > test.txt
- 如果您希望将文本追加到文件内容最后,而不是覆盖它,请使用>>输出追加重定向符号。
显示命令执行结果
以下命令将会在终端显示当前的工作路径。
echo `pwd`
使用$(command)形式可以达到相同效果。
echo $(pwd)
输出结果:
date
命令描述:date命令用于显示和设置系统的时间和日期。 命令格式:date [选项] [+格式] 其中,时间格式的部分控制字符解释如下:
字符 | 说明 |
---|
%a | 当地时间的星期名缩写(例如: 日,代表星期日) | %A | 当地时间的星期名全称 (例如:星期日) | %b | 当地时间的月名缩写 (例如:一,代表一月) | %B | 当地时间的月名全称 (例如:一月) | %c | 当地时间的日期和时间 (例如:2005年3月3日 星期四 23:05:25) | %C | 世纪;比如 %Y,通常为省略当前年份的后两位数字(例如:20) | %d | 按月计的日期(例如:01) | %D | 按月计的日期;等于%m/%d/%y | %F | 完整日期格式,等价于 %Y-%m-%d | %j | 按年计的日期(001-366) | %p | 按年计的日期(001-366) | %r | 当地时间下的 12 小时时钟时间 (例如:11:11:04 下午) | %R | 24 小时时间的时和分,等价于 %H:%M | %s | 自UTC 时间 1970-01-01 00:00:00 以来所经过的秒数 | %T | 时间,等于%H:%M:%S | %U | 一年中的第几周,以周日为每星期第一天(00-53) | %x | 当地时间下的日期描述 (例如:12/31/99) | %X | 当地时间下的时间描述 (例如:23:13:48) | %w | 一星期中的第几日(0-6),0 代表周一 | %W | 一年中的第几周,以周一为每星期第一天(00-53) |
命令用法示例:
默认格式查看当前系统时间
date
输出结果:
指定格式查看当前系统时间
date "+%Y-%m-%d %H:%M:%S"
输出结果:
查看今天是当年中的第几天
date "+%j"
输出结果:
将系统的当前时间设置为任意的
date -s "20200220 20:20:20"
输出结果:
校正系统时间,与网络时间同步
yum -y install ntp
ntpdate time.nist.gov
输出结果:
wget
命令描述:在终端中下载文件。 命令格式:wget [参数] 下载地址 参数说明:
参数 | 作用 |
---|
-b | 后台下载 | -P | 下载到指定目录 | -t | 最大重试次数 | -c | 断点续传 | -p | 下载页面内所有资源,包括图片、视频等 | -r | 递归下载 |
下载到指定目录
命令使用示例: 下载一张图片到路径/root/static/img/中,-p参数默认值为当前路径,如果指定路径不存在会自动创建。
wget -P /root/static/img/ http://img.alicdn.com/tfs/TB1.R._t7L0gK0jSZFxXXXWHVXa.png
输出结果:
ps
命令描述:ps命令用于查看系统中的进程状态。 命令格式:ps [参数]。 命令参数说明:
参数 | 作用 |
---|
-a | 显示现行终端机下的所有程序,包括其他用户的程序 | -u | 以用户为主的格式来显示程序状况 | -x | 显示没有控制终端的进程,同时显示各个命令的具体路径 | -e | 列出程序时,显示每个程序所使用的环境变量 | -f | 显示当前所有的进程 | -t | 指定终端机编号,并列出属于该终端机的程序的状况 |
查看系统中的进程状态
命令使用示例:
ps -ef | grep sshd
输出结果:
top
监视进程活动与系统负载
命令描述:top命令动态地监视进程活动与系统负载等信息。 命令使用示例:
top
输出结果:
命令输出参数解释: 以上命令输出视图中分为两个区域,一个统计信息区,一个进程信息区。
- 统计信息区
- 第一行信息依次为:系统时间、运行时间、登录终端数、系统负载(三个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低)。
- 第二行信息依次为:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
- 第三行信息依次为:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。
- 第四行信息依次为:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。
- 第五行信息依次为:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、预加载内存量。
- 进程信息区
列名 | 含义 |
---|
PID | 进程ID | USER | 进程所有者的用户名 | PR | 进程优先级 | NI | nice值。负值表示高优先级,正值表示低优先级 | VIRT | 进程使用的虚拟内存总量,单位kb | RES | 进程使用的、未被换出的物理内存大小,单位kb | SHR | 共享内存大小,单位kb | S | 进程状态D:不可中断的睡眠状态R:正在运行S:睡眠T:停止Z:僵尸进程 | %CPU | 上次更新到现在的CPU时间占用百分比 | %MEM | 进程使用的物理内存百分比 | TIME+ | 进程使用的CPU时间总计,单位1/100秒 | COMMAND | 命令名 |
按 q 键退出监控页面。
pidof
命令描述:pidof命令用于查询指定服务进程的PID值。 命令格式:pidof [服务名称]。 命令参数说明:
参数 | 说明 |
---|
-s | 仅返回一个进程号 | -c | 只显示运行在root目录下的进程,这个选项只对root用户有效 | -o | 忽略指定进程号的进程 | -x | 显示由脚本开启的进程 |
查询指定服务进程的PID值
命令使用示例: 查询出crond服务下的所有进程ID
pidof crond
输出结果:
kill
命令描述:kill命令用于终止指定PID的服务进程。 kill可将指定的信息送至程序。预设的信息为SIGTERM(15),可将指定程序终止。若仍无法终止该程序,可使用SIGKILL(9)信息尝试强制删除程序。 命令格式:kill [参数] [进程PID]。
终止指定PID的服务进程
命令使用示例: 删除pid为1247的进程。
kill -9 1247
killall
命令描述:killall命令用于终止指定名称的服务对应的全部进程。 命令格式:killall [进程名称]。
终止指定名称的服务对应的全部进程
命令使用示例: 删除crond服务下的所有进程。
killall crond
|