常用系统工作命令
echo命令 echo命令用于在终端上输出字符串或变量提取后的值
,语法格式“为echo[字符串][$变量]”
[root@linuxprobe ~]# echo LinuxProbe.com
该命令会在终端屏幕上显示如下信息:
LinuxProbe.com
下面使用“$变量”的方式提取出变量SHELL的值,并将其输出到屏幕上:
[root@linuxprobe ~]# echo $SHELL
/bin/bash
date命令 date命令用于显示或设置系统的时间与日期
,语法格式为"date [+指定的格式]"
参数 作用 %S 秒(00~59) %M 分钟(00~59) %H 小时(00~23) %I 小时(00~12) %m 月份(1~12) %p 显示出AM或PM %a 缩写的工作日名称(例如:Sun) %A 完整的工作日名称(例如:Sunday) %b 缩写的月份名称(例如:Jan) %B 完整的月份名称(例如:January) %q 季度(1~4) %y 简写年份(例如:20) %Y 完整年份(例如:2020) %d 本月中的第几天 %j 今年中的第几天 %n 换行符(相当于按下回车键) %t 跳格(相当于按下Tab键)
按照默认格式查看当前系统时间的date命令如下所示:
[root@linuxprobe ~]# date
Sat Sep 5 09:13:45 CST 2020
按照“年-月-日 小时:分钟:秒”的格式查看当前系统时间的date命令如下所示:
[root@linuxprobe ~]# date "+%Y-%m-%d %H:%M:%S"
2020-09-05 09:14:35
将系统的当前时间设置为2020年11月1日8点30分的date命令如下所示:
[root@linuxprobe ~]# date -s "20201101 8:30:00"
Sun Nov 1 08:30:00 CST 2020
再次使用date命令并按照默认的格式查看当前的系统时间,如下所示:
[root@linuxprobe ~]# date
Sun Nov 1 08:30:08 CST 2020
date命令中的参数%j可用来查看今天是当年中的第几天。这个参数能够很好地区分备份时间的早晚,即数字越大,越靠近当前时间。该参数的使用方式以及显示结果如下所示:
[root@linuxprobe ~]# date "+%j"
306
timedatectl timedatectl命令用于设置系统的时间
,英文全称为“time date control”,语法格式为“timedatectl [参数]”
参数 作用 status 显示状态信息 list-timezones 列出已知时区 set-time 设置系统时间 set-timezone 设置生效时区
timedatectl status
timedatectl set-timezone Asia/Shanghai
//永久生效
timedatectl set-time 2021-05-18
timedatectl set-time 9:30
4.reboot命令 reboot命令用于重启系统,输入该命令后按回车键执行即可。 由于重启计算机这种操作会涉及硬件资源的管理权限,因此最好是以root管理员的身份来重启
,普通用户在执行该命令时可能会被拒绝。命令如下:
reboot
poweroff poweroff命令用于关闭系统,输入该命令后按回车键
即可。 该命令也会涉及硬件资源的管理权限,因此最好还是以root管理员的身份来关闭电脑wget wget命令用于在终端命令中下载网络文件,英文全称为“web get",语法格式为“wget [参数] 网址” 借助于wget命令,可以无须打开浏览器,直接在命令界面中就能下载文件
参数 作用 -b 后台下载模式 -P 下载到指定目录 -t 最大尝试次数 -c 断点续传 -p 下载页面内所有资源,包括图片、视频等 -r 递归下载
wget -r -p https://www.xxx.com
ps ps命令用于查看系统中的进程,英文全称为“process",语法格式为“ps [参数]”
参数 作用 -a 显示所有进程(包括其他用户的进程) -u 用户及其他详细信息 -x 显示没有控制终端的进程
Linux系统中时刻运行着许多进程,如果能够合理地管理它们,则可以优化系统的性能。在Linux系统中有5种常见的进程状态,分别为运行、中断、不可中断、僵死与停止
,其各自含义如下所示:
** R(运行 Running):** 进程正在运行或在运行队列中等待 S(中断 Sleeping): 进程处于休眠中,当某个条件形成后或者接收信号时,则脱离该状态D(不可中断 ): 进程不响应系统异步信号,即便用kill命令也不能将其中断
Z(僵死 Zombie): 进程已经终止,但进程描述符依然存在,直到父进程调用wait4()系统函数后将进程释放T(停止 Stopped): 进程收到停止信号后停止运行 除了上面5种常见的进程状态,还有可能是高优先级(<)、低优先级(N)、被锁进内存(L)、包含子进程 (s)以及多线程(I)这5种补充状态
参数 含义 USER 进程的所有者 PID 进程的ID号 %CPU 运算器的占用率 %MEM 内存占用率 VSZ 虚拟内存使用量(单位是KB) RSS 占用的固定内存量(单位是KB) TTY 所在终端 STAT 进程状态 START 被启动的时间 TIME 实际使用CPU的时间 COMMAND 命令名称与参数
在Linux系统中的命令参数有长短格式之分,长格式和长格式之间不能合并,长格式和短格式之间也不能合并,但短格式和短格式之间可以合并的,合并后仅保留一个减号(-)即可。另外ps命令允许参数不加减号(-),因此可直接写成ps aux的样子
8. pstree pstree命令用于以树状图的形式展示进程之间的关系,英文全称为“process tree”,输入该命令后按回车键执行即可 前文提到,在执行ps命令后,产生的信息量太大没有规律,如果想让进程以树状图的形式,有层次地展示出进程之间的关系,则可以使用pstree命令: 9. top top命令用于动态地监视进程活动及系统负载等信息,输入该命令后按回车键执行即可。 top命令执行结果的前5行为系统的整体的统计信息,其所代表的含义如下:
第一行: 系统时间、运行时间、登录终端数、系统负载(3个数值分别为1分钟、5分钟、15分钟内的平均值,数据越小意味着负载越低) 第二行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数 第三行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。其中数据均为CPU数据并以百分比格式显示,例如:“99.9 id”意味着有99.9%的CPU处理器资源处于空闲 第四行:物理内存总量,内存空闲量、内存使用量、作为内核缓存的内存量 第五行:虚拟内存总量、虚拟内存空闲量、虚拟内存使用量、已被提前加载的内存量
nice nice命令用于调整进程的优先级,语法格式为“nice 优先级数字 服务名称” 在top命令输出的结果中,PR和NI值代表的是进程的优先级,数字越低(取值范围是-20~19),优先级越高
。在日常的生产工作中,可以将一些不重要进程的优先级调低,让紧迫的服务更多地利用CPU和内存资源,以达到合理分配系统资源的目的
nice -n -20 bash
pidof pidof命令用于查询某个指定服务进程的PID号码值,语法格式为“pidof [参数] 服务名称” 每个进程的进程号码值(PID)是唯一的,可以用于区分不同的进程,例如:执行如下命令来查询本机上sshd服务程序的PID:
pidof sshd
kill kill命令用于终止某个指定PID值的服务进程,语法格式为“kill [参数] 进程的PID”
kill 2156
//有时系统会提示进程无法被终止,此时可以加参数-9,表示最高级别地强制杀死进程:
kill -9 2156
killall killall命令用于终止某个指定名称的服务所对应的全部进程,语法格式为“killall [参数] 服务名称”
//查询httpd服务的PID
pidof httpd
//kill掉httpd相关的全部进程
killall httpd
在终端中执行一个命令后想立即停止它,可以同时按下Ctrl+C组合键,这样将立即终止该命令的进程。 在命令末尾添加一个&符号,这样命令将进入系统后台来执行