系统工作命令
系统工作命令
echo
echo 命令用于在终端输出字符串或变量提取后的值,格式为“echo [字符串 | $变量]”。
[test@bogon ~]$ echo xbxaq.com
xbxaq.com
[test@bogon ~]$
date
date 命令用于显示及设置系统的时间或日期,格式为“date [选项] [+指定的格式]”。
只需在 date 命令中输入以“+”号开头的参数,即可按照指定格式来输出系统的时间或日期,这样在日常工作时便可以把备份数据的命令与指定格式输出的时间信息结合到一起。
例如,把打包后的文件自动按照“年-月-日”的格式打包成“backup-2017-9-1.tar.gz”,用户只需要看一眼文件名称就能大概了解到每个文件的备份时间了。
date 命令中常见的参数格式及作用如下:
参数 | 作用 |
---|---|
%t | tab键 |
%H | 小时(24制) |
%I | 小时(12制) |
%M | 分钟 |
%S | 秒 |
%J | 当前年份中的第几天 |
%Y | 当前年份 |
%m | 当前月份 |
%d | 当前月份的天数 |
[test@bogon ~]$ date
2024年 12月 27日 星期五 23:10:56 CST
[test@bogon ~]$ date "+%Y-%d-%m"
2024-27-12
[test@bogon ~]$ date "+%H-%S"
23-39
[test@bogon ~]$ date "+%H-%S-%M"
23-53-11
[test@bogon ~]$
reboot
reboot 命令用于重启系统,其格式为 reboot。
由于重启计算机这种操作会涉及硬件资源的管理权限,因此默认只能使用 root 管理员来重启。
poweroff
poweroff 命令用于关闭系统,其格式为 poweroff。
该命令与 reboot 命令相同,都会涉及硬件资源的管理权限,因此默认只有 root 管理员才可以关闭电脑。
wget
wget 命令用于在终端中下载网络文件,格式为“wget [参数] 下载地址”。
wget 命令的常用参数以及作用如下:
参数 | 作用 |
---|---|
-b | 后台下载模式 |
-P | 下载到指定目录 |
-t | 最大尝试次数 |
-c | 断点续传 |
-p | 下载页面中的所有资源 |
-r | 递归下载 |
[test@bogon ~]$ wget https://xbxaq.com/doc/67/ -P /tmp/xbxaq.com
--2024-12-27 23:17:58-- https://xbxaq.com/doc/67/
正在解析主机 xbxaq.com (xbxaq.com)... 47.108.154.216
正在连接 xbxaq.com (xbxaq.com)|47.108.154.216|:443... 已连接。
错误: 无法验证 xbxaq.com 的由 “/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=Encryption Everywhere DV TLS CA - G2” 颁发的证书:
无法本地校验颁发者的权限。
要以不安全的方式连接至 xbxaq.com,使用“--no-check-certificate”。
[test@bogon ~]$ wget https://xbxaq.com/doc/67/ -P /tmp/xbxaq.com --no-check-certificate
--2024-12-27 23:18:35-- https://xbxaq.com/doc/67/
正在解析主机 xbxaq.com (xbxaq.com)... 47.108.154.216
正在连接 xbxaq.com (xbxaq.com)|47.108.154.216|:443... 已连接。
警告: 无法验证 xbxaq.com 的由 “/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=Encryption Everywhere DV TLS CA - G2” 颁发的证书:
无法本地校验颁发者的权限。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:26400 (26K) [text/html]
正在保存至: “/tmp/xbxaq.com/index.html”
100%[==================================================================================================================>] 26,400 --.-K/s 用时 0s
2024-12-27 23:18:35 (437 MB/s) - 已保存 “/tmp/xbxaq.com/index.html” [26400/26400])
[test@bogon ~]$
[test@bogon ~]$ ll /tmp/xbxaq.com/
总用量 28
-rw-rw-r--. 1 test test 26400 12月 27 23:18 index.html
[test@bogon ~]$
ps
ps 命令用于查看系统中的进程状态,格式为“ps [参数]”。
ps 命令的常用参数以及作用如下:
参数 | 作用 |
---|---|
-a | 显示所有进程 |
-u | 用户以及其他详细信息 |
-x | 显示没有控制终端的进程 |
进程状态
Linux 系统中时刻运行着许多进程,如果能够合理地管理它们,则可以优化系统的性能。在Linux 系统中,有 5 种常见的进程状态,分别为运行、中断、不可中断、僵死与停止,其各自含义如下所示:
进程状态 | 描述 | 含义 |
---|---|---|
R | 运行 | 进程正在运行或在运行队列中等待 |
S | 中断 | 进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该状态 |
D | 不可中断 | 进程不响应系统异步信号,即便用 kill 命令也不能将其中断 |
Z | 僵死 | 进程已经终止,但进程描述符依然存在, 直到父进程调用 wait4()系统函数后将进程释放 |
T | 停止 | 进程收到停止信号后停止运行 |
[test@bogon ~]$ ps -aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.3 128144 6796 ? Ss 22:43 0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root 2 0.0 0.0 0 0 ? S 22:43 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 22:43 0:00 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< 22:43 0:00 [kworker/0:0H]
root 6 0.0 0.0 0 0 ? S 22:43 0:00 [kworker/u256:0]
root 7 0.0 0.0 0 0 ? S 22:43 0:00 [migration/0]
root 8 0.0 0.0 0 0 ? S 22:43 0:00 [rcu_bh]
root 9 0.0 0.0 0 0 ? S 22:43 0:01 [rcu_sched]
第一排分别表示什么信息:
信息 | 描述 |
---|---|
USER | 进程的所有者 |
PID | 进程ID 号 |
%CPU | 运算器占用率 |
%MEM | 内存占用率 |
VSZ | 虚拟内存使用量(单位是 KB) |
RSS | 占用的固定内存量(单位是KB) |
TTY | 所在终端 |
STAT | 进程状态 |
START | 被启动的时间 |
TIME | 实际使用CPU的时间 |
COMMAND | 命令名称与参数 |
jobs
命令查看处于后台的任务列表。
top
top 命令用于动态地监视进程活动与系统负载等信息,其格式为 top。
完全将它看作 Linux 中的“强化版的Windows 任务管理器
- 第 1 行:系统时间、运行时间、登录终端数、系统负载(三个数值分别为 1 分钟、5分钟、15 分钟内的平均值,数值越小意味着负载越低)。
- 第 2 行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
- 第 3 行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。(数据均为 CPU 数据并以百分比格式显示,例如“97.1 id”意味着有 97.1%的 CPU 处理器资源处于空闲。)
- 第 4 行:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。
- 第 5 行:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量。
top - 23:31:22 up 47 min, 3 users, load average: 0.12, 0.04, 0.05
Tasks: 211 total, 1 running, 210 sleeping, 0 stopped, 0 zombie
%Cpu(s): 14.6 us, 6.3 sy, 0.0 ni, 79.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1865304 total, 82932 free, 992492 used, 789880 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 621376 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
11793 test 20 0 3616252 284596 58556 S 37.3 15.3 0:32.07 gnome-shell
10990 root 20 0 380256 70920 13112 S 13.3 3.8 0:16.02 X
12743 test 20 0 808892 37028 20340 S 2.3 2.0 0:04.26 gnome-terminal-
703 root 20 0 13216 748 604 S 0.3 0.0 0:00.76 rngd
1191 root 20 0 699848 17756 11268 S 0.3 1.0 0:00.66 libvirtd
12673 root 20 0 0 0 0 S 0.3 0.0 0:00.08 kworker/u256:2
1 root 20 0 128144 6796 4128 S 0.0 0.4 0:02.23 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.15 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
6 root 20 0 0 0 0 S 0.0 0.0 0:00.14 kworker/u256:0
7 root rt 0 0 0 0 S 0.0 0.0 0:00.06 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root 20 0 0 0 0 S 0.0 0.0 0:01.06 rcu_sched
10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 lru-add-drain
11 root rt 0 0 0 0 S 0.0 0.0 0:00.02 watchdog/0
12 root rt 0 0 0 0 S 0.0 0.0 0:00.02 watchdog/1
13 root rt 0 0 0 0 S 0.0 0.0 0:00.08 migration/1
14 root 20 0 0 0 0 S 0.0 0.0 0:00.06 ksoftirqd/1
16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/1:0H
18 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kdevtmpfs
pidof
pidof 命令用于查询某个指定服务进程的 PID 值,格式为“pidof [参数] [服务名称]”。
每个进程的进程号码值(PID)是唯一的,因此可以通过 PID 来区分不同的进程。
[test@bogon ~]$ pidof sshd
1184
[test@bogon ~]$
kill
kill 命令用于终止某个指定 PID 的服务进程,格式为“kill [参数] [进程 PID]”。
[test@bogon ~]$ pidof sshd
1184
[test@bogon ~]$ kill 1184
bash: kill: (1184) - 不允许的操作
[test@bogon ~]$ su root
密码:
[root@bogon test]# kill 1184
[root@bogon test]#
killall
killall 命令用于终止某个指定名称的服务所对应的全部进程,格式为:“killall [参数] [进程名称]”。
通常来讲,复杂软件的服务程序会有多个进程协同为用户提供服务,如果逐个去结束这些进程会比较麻烦,此时可以使用 killall 命令来批量结束某个服务程序带有的全部进程。
pkill
根据特定条件终止相应的进程
- -U:根据进程所属的用户名终止相应进程
- -t:根据进程所在的终端终止相应进程
本文系作者 @小白学安全 原创发布在 xbxaq.com 站点,未经许可,禁止转载!
评论