###2、YUM软件包管理命令
[root@chenstudy ~]# echo chen
chen
[root@chenstudy ~]# echo $SHELL
/bin/bash
# 查看当前系统时间
[root@chenstudy ~]# date
2022年 04月 09日 星期六 22:32:21 CST
# 按照“年-月-日 小时:分钟:秒”的格式查看当前系统时间
[root@chenstudy ~]# date "+%Y-%m-%d %H:%M:%S"
2022-04-09 22:32:46
# 将当前系统的时间设置为2022年04月0922点36分
[root@chenstudy ~]# date -s "20220409 22:36:00"
2022年 04月 09日 星期六 22:36:00 CST
# 再次使用date查看系统当前时间
[root@chenstudy ~]# date
2022年 04月 09日 星期六 22:36:11 CST
# dtae "+j" 用来查看今天是当年中的第几天
[root@chenstudy ~]# date "+%j"
099
# wget 命令用于在终端中下载网络文件,格式为“wget [参数] 下载地址”。
[root@chenstudy ~]# cd /home
[root@chenstudy home]# wget http://www.linuxprobe.com/docs/LinuxProbe.pdf
-b # 后台下载模式
-P # 下载到指定目录
-t # 最大尝试次数
-c # 断点续传
-p # 下载页面内所有资源,包括图片、视频等
-r # 递归下载
# wget 命令递归下载 www.linuxprobe.com 网站内的所有页面数据以及文件,下载完后会自动保存到当前路径下一个名为 www.linuxprobe.com 的目录中
[root@chenstudy home]# wget -r -p http://www.linuxprobe.com,
[root@chenstudy home]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.1 125504 3440 ? Ss 3月24 0:15 /usr/lib/systemd/systemd --switched-root --system --de
root 2 0.0 0.0 0 0 ? S 3月24 0:00 [kthreadd]
root 4 0.0 0.0 0 0 ? S< 3月24 0:00 [kworker/0:0H]
root 6 0.0 0.0 0 0 ? S 3月24 0:18 [ksoftirqd/0]
root 7 0.0 0.0 0 0 ? S 3月24 0:00 [migration/0]
root 8 0.0 0.0 0 0 ? S 3月24 0:00 [rcu_bh]
# USER 进程的所有者
# PID 进程ID号
# %CPU 运算器占用率
# %MEM 内存占用率
# VSZ 虚拟内存使用量(单位是 KB)
# RSS 占用的固定内存量(单位是KB)
# TTY 所在终端
# STAT 进程状态
# START 被启动的时间
# TIME 实际使用CPU的时间
# COMMAND 命令名称与参数
[root@chenstudy home]# top
# 查询本机上 sshd 服务程序的 PID
[root@chenstudy ~]# pidof sshd
24486 1156
[root@chenstudy ~]# kill 1156
[root@chenstudy ~]# pidof httpd
[root@chenstudy ~]# killall httpd
[root@chenstudy ~]# ifconfig
[root@chenstudy ~]# uname -a
Linux chenstudy 3.10.0-1160.53.1.el7.x86_64 #1 SMP Fri Jan 14 13:59:45 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
[root@chenstudy etc]# cat centos-release
CentOS Linux release 7.9.2009 (Core)
[root@chenstudy etc]#
[root@chenstudy ~]# uptime
23:11:18 up 17 days, 6:46, 2 users, load average: 0.05, 0.22, 0.28
[root@chenstudy ~]# free -h
total used free shared buff/cache available
Mem: 1.8G 347M 192M 612K 1.3G 1.3G
Swap: 0B 0B 0B
# total 内存总量
# used 已用量
# free 可用量
# shared 进程共享的内存量
# buff/cache 磁盘缓存的内存量/缓存的内存量
# available 可利用的内存量
[root@chenstudy ~]# who
root pts/0 2022-04-10 20:07 (117.158.163.68)
root pts/1 2022-04-10 20:07 (117.158.163.68)
[root@chenstudy ~]#
执行 who 命令的结果
登录的用户名 | 终端设备 | 登录到系统的时间 |
---|---|---|
root | pts/0 | 2022-04-10 20:07 (117.158.163.68) |
root | pts/1 | 2022-04-10 20:07 (117.158.163.68) |
# 使用 last 命令可以查看本机的登录记录由于这些信息都是以日志文件的形式保存在系统中,因此黑客可以很容易地对内容进行篡改
[root@chenstudy ~]# last
root pts/1 117.158.163.68 Sun Apr 10 20:07 still logged in
root pts/0 117.158.163.68 Sun Apr 10 20:07 still logged in
root pts/1 117.158.163.67 Sun Apr 10 15:12 - 19:27 (04:14)
root pts/0 117.158.163.67 Sun Apr 10 15:12 - 19:27 (04:14)
root pts/1 117.158.163.67 Sun Apr 10 08:29 - 12:27 (03:58)
root pts/0 117.158.163.67 Sun Apr 10 08:29 - 12:27 (03:58)
root pts/1 117.158.163.79 Sat Apr 9 22:25 - 23:49 (01:24)
root pts/0 117.158.163.79 Sat Apr 9 22:25 - 23:49 (01:24)
root pts/1 117.158.163.78 Thu Apr 7 08:39 - 08:42 (00:03)
root pts/0 117.158.163.78 Thu Apr 7 08:39 - 08:42 (00:03)
root pts/1 117.158.163.78 Wed Apr 6 16:22 - 20:14 (03:52)
root pts/3 117.158.163.78 Wed Apr 6 15:45 - 20:14 (04:28)
root pts/4 117.158.163.78 Wed Apr 6 15:38 - 15:40 (00:01)
[root@chenstudy ~]# history
1 clear
2 cd /
3 uname -f
4 clear
5 uname -r
6 clear
7 cat /etc/os-release
# 历史命令会被保存到用户家目录中的.bash_history 文件中
[root@chenstudy ~]# cat ~/.bash_history
clear
cd /
uname -f
clear
uname -r
clear
cat /etc/os-release
# 清空当前用户在本机上执行的Linux命令历史记录
[root@chenstudy ~]# history -c
[root@chenstudy ~]# pwd
/root
[root@chenstudy ~]# cd /home
[root@chenstudy home]# ls
ceshi chen chen.java dockerfile LinuxProbe.pdf mysql test.java
# 使用 ls 命令的“-a”参数看到全部文件(包括隐藏文件)
# 使用“-l”参数可以查看文件的属性、大小等详细信息
[root@chenstudy home]# ls -al
总用量 17288
drwxr-xr-x. 6 root root 4096 4月 9 22:52 .
dr-xr-xr-x. 18 root root 4096 3月 24 16:24 ..
drwxr-xr-x 2 root root 4096 4月 2 09:29 ceshi
drwxr-xr-x 3 root root 4096 4月 6 15:32 chen
-rw-r--r-- 1 root root 0 3月 30 23:26 chen.java
drwxr-xr-x 2 root root 4096 4月 5 10:54 dockerfile
-rw-r--r-- 1 root root 17676281 9月 22 2020 LinuxProbe.pdf
drwxr-xr-x 4 root root 4096 4月 2 09:49 mysql
-rw-r--r-- 1 root root 0 3月 30 23:28 test.java
# 查看目录属性信息,则需要额外添加一个-d 参数
[root@chenstudy home]# ls -ld /etc
drwxr-xr-x. 78 root root 4096 3月 29 18:00 /etc
[root@chenstudy home]#
[root@chenstudy home]# ls
ceshi chen chen.java dockerfile LinuxProbe.pdf mysql test.java
[root@chenstudy home]# ls -l chen.java
-rw-r--r-- 1 root root 54 4月 11 14:24 chen.java
[root@chenstudy home]# echo "System.out.println("Hello");" >> chen.java
[root@chenstudy home]# ls -l chen.java
-rw-r--r-- 1 root root 81 4月 11 14:25 chen.java
[root@chenstudy home]# touch -d "2021-06-28 15:44" chen.java
[root@chenstudy home]# ls -l chen.java
-rw-r--r-- 1 root root 81 6月 28 2021 chen.java
[root@chenstudy home]#
[root@chenstudy home]# mkdir linux
[root@chenstudy home]# cd linux/
[root@chenstudy linux]# mkdir -p a/b/c
[root@chenstudy linux]# cd a/
[root@chenstudy a]# cd b/
[root@chenstudy b]#
[root@chenstudy linux]# touch install.log
[root@chenstudy linux]# cp install.log x.log
[root@chenstudy linux]# ls
a install.log x.log
[root@chenstudy linux]#
[root@chenstudy linux]# mv x.log linux.log
[root@chenstudy linux]# ls
a install.log linux.log
[root@chenstudy linux]#
[root@chenstudy linux]# rm install.log
rm:是否删除普通空文件 "install.log"?y
[root@chenstudy linux]# ls
a linux.log
[root@chenstudy linux]# rm -f linux.log
[root@chenstudy linux]# ls
a
# 删除目录
[root@chenstudy linux]# rm -rf a
[root@chenstudy linux]# ls
[root@chenstudy linux]#
# /dev/zero 设备文件中取出一个大小为 560MB 的数据块,保存成名为 560_file 的文件
[root@chenstudy home]# dd if=/dev/zero of=560_file count=1 bs=560MB
记录了1+0 的读入
记录了1+0 的写出
560000000字节(560 MB)已复制,4.66672 秒,120 MB/秒
[root@chenstudy home]#
# dd命令可以把光驱设备中的光盘制作成 iso 格式的镜像文件
[root@chenstudy home]# dd if=/dev/cdrom of=RHEL-server-7.0-x86_64-LinuxProbe.Com.iso
7311360+0 records in
7311360+0 records out
3743416320 bytes (3.7 GB) copied, 370.758 s, 10.1 MB/s
[root@chenstudy home]# file chen.java
chen.java: ASCII text
[root@chenstudy home]# file /home/dockerfile/
/home/dockerfile/: directory
[root@chenstudy home]#
[root@chenstudy home]# tar -czvf etc.tar.gz /etc
tar: 从成员名中删除开头的“/”
/etc/
/etc/depmod.d/
/etc/depmod.d/dist.conf
/etc/sudoers
/etc/gss/
/etc/gss/mech.d/
/etc/anacrontab
/etc/wgetrc
/etc/python/
# 将打包后的压缩包文件指定解压到/root/etc 目录中
[root@chenstudy home]# mkdir /root/etc
[root@chenstudy home]# tar xzvf etc.tar.gz -C /root/etc
[root@chenstudy home]# grep /sbin/nologin /etc/passwd
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
[root@chenstudy home]# find /etc -name "host*" -print
/etc/hosts.allow
/etc/hosts.deny
/etc/host.conf
/etc/hostname
/etc/cloud/templates/hosts.suse.tmpl
/etc/cloud/templates/hosts.debian.tmpl
/etc/cloud/templates/hosts.freebsd.tmpl
/etc/cloud/templates/hosts.redhat.tmpl
/etc/selinux/targeted/active/modules/100/hostname
/etc/hosts
# 要在整个系统中搜索权限中包括 SUID 权限的所有文件只需使用-4000 即可
# CentOS 报错未知断言 Red Hat里可以
[root@chenstudy home]# find / -perm -4000 -print
/usr/bin/fusermount
/usr/bin/su
/usr/bin/umount
/usr/bin/passwd
/usr/sbin/userhelper
/usr/sbin/usernetctl
[root@chenstudy ~]# cd /home
[root@chenstudy home]# touch linux
[root@chenstudy home]# ls -l linux
-rw-r--r--. 1 root root 0 4月 14 19:48 linux
[root@chenstudy home]# ls -l xxxxx
ls: 无法访问xxxxx: 没有那个文件或目录
[root@chenstudy home]#
# 在上述命令中,名为 linux 的文件是存在的,输出信息是该文件的一些相关权
# 限、所有者、所属组、文件大小及修改时间等信息,这也是该命令的标准输出信息,
# 而名为 xxxxxx的第二个文件是不存在的,因此在执行完 ls 命令之后显示的报
# 错提示信息也是该命令的错误输出信息
符号 | 作用 |
---|---|
命令 < 文件 | 将文件作为命令的标准输入 |
命令 < < 分界符 | 从标准输入中读入,直到遇见分界符才停止 |
命令 < 文件 1 > 文件 2 | 将文件 1 作为命令的标准输入并将标准输出到文件 2 |
符号 | 作用 |
---|---|
命令 > 文件 | 将标准输出重定向到一个文件中(清空原有文件的数据) |
命令 2> 文件 | 将错误输出重定向到一个文件中(清空原有文件的数据) |
命令 >> 文件 | 将标准输出重定向到一个文件中(追加到原有内容的后面) |
命令 2>> 文件 | 将错误输出重定向到一个文件中(追加到原有内容的后面) |
命令 >> 文件 2>&1 或 命令 &>> 文件 | 将标准输出与错误输出共同写入到文件中(追加到原有内容的 后面) |
对于重定向中的标准输出模式,可以省略文件描述符 1 不写 而错误输出模式的文件描述符 2 是必须要写的
# 通过标准输出重定向将 man bash 命令原本要输出到屏幕的信息写入到文件readme.txt 中,然后显示readme.txt 文件中的内容
[root@chenstudy home]# man bash > readme.txt
[root@chenstudy home]# cat readme.txt
-c string 如果有 -c 选项,那么命令将从 string 中读取。如果 string 后面有参数 (argument),它们将用于给位置参数 (positional parameter,以 $0 起始) 赋值。
-i 如果有 -i 选项,shell 将交互地执行 ( interactive )。
-l 选项使得 bash 以类似登录 shell (login shell) 的方式启动 (参见下面的 启
-r 如果有 -r 选项,shell 成为受限的 ( restricted ) (参见下面的 受
-s 如果有 -s 选项,或者如果选项处理完以后,没有参数剩余,那么命令将从标准输入读取。 这个选项允许在启动一个交互 shell 时可以设置位置参数。
-D 向标准输出打印一个以 $ 为前导的,以双引号引用的字符串列表。 这是在当前语言环境不是 C 或 POSIX 时,脚本中需要翻译的字符串。 这个选项隐含了 -n 选项;不会执行命令。
[-+]O [shopt_option]
shopt_option 是一个 shopt 内建命令可接受的选项 (参见下面的 shell 内
取消它。 如果没有给出 shopt_option,shopt 将在标准输出上打印设为允许的选项的名称和值。 如果启动选项是 +O,输出将以一种可以重用为输入的格式显示。
-- -- 标志选项的结束,禁止其余的选项处理。任何 -- 之后的参数将作为文件名和参数对待。参数 - 与此等价。
Bash 也解释一些多字节的选项。在命令行中,这些选项必须置于需要被识别的单字符参数之前。
--dump-po-strings
等价于 -D,但是输出是 GNU gettext po (可移植对象) 文件格式
--dump-strings
等价于 -D
--help 在标准输出显示用法信息并成功退出
--init-file file
重写readme.txt文件,并写入:Wlecome to XYNU,然后再追加Hello 22
[root@chenstudy home]# echo "Wlecome to XYNU" > readme.txt
[root@chenstudy home]# echo "Hello 22" >> readme.txt
[root@chenstudy home]# cat readme.txt
Wlecome to XYNU
Hello 22
对于输处重定向技术,不同命令的标准输出和错误输出还是有区别的
对于真实存在的文件,使用标准输出即将原本输出到屏幕的信息写入到文件中,而错误的输出重定向则依然把信息输出到屏幕上
[root@chenstudy home]# ls -l linux
-rw-r--r--. 1 root root 0 4月 14 19:48 linux
[root@chenstudy home]# ls -l linux > /root/stderr.txt
[root@chenstudy home]# ls -l linux 2> /root/stderr.txt
-rw-r--r--. 1 root root 0 4月 14 19:48 linux
[root@chenstudy home]#
如何把错误信息写入到文件中呢?
[root@chenstudy home]# ls -l xxxx
ls: 无法访问xxxx: 没有那个文件或目录
[root@chenstudy home]# ls -l xxxx > /root/stderr.txt
ls: 无法访问xxxx: 没有那个文件或目录
[root@chenstudy home]# ls -l xxxx 2> /root/stderr.txt
[root@chenstudy home]# cat /root/stderr.txt
ls: 无法访问xxxx: 没有那个文件或目录
[root@chenstudy home]#
**执行格式为“命令 A | 命令 B” **
# 找出被限制登录用户的命令是 grep "/sbin/nologin" /etc/passwd;
# 统计文本行数的命令则是 wc -l
[root@chenstudy home]# grep "/sbin/nologin" /etc/passwd | wc -l
39
[root@chenstudy home]#
# 查看/etc 目录中的文件列表及属性信息
[root@chenstudy home]# ls -l /etc/ | more
在修改用户密码时,通常都需要输入两次密码以进行确认,这在编写自动化脚本时将成 第3章 管道符、重定向与环境变量 64 为一个非常致命的缺陷。通过把管道符和 passwd 命令的–stdin 参数相结合,我们可以用一条 命令来完成密码重置操作:
[root@chenstudy home]# echo "root" | passwd --stdin root
更改用户 root 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@chenstudy home]#
管道符命令可以组合使用多个命令A | 命令B | 命令C
我们有时候也会遇到明明一 个文件的名称就在嘴边但就是想不起来的情况批量查看所有硬 盘文件的相关权限属性,一种方式是这样的:
#通配符就是通用的匹配信息的符号,比如星号(*)代表匹配零个或多个字符,问号(?)代表匹配单个字符,中括号内加上数字[0-9]代表匹配 0~9之间的单个数字的字符,而中括号内加上字母[abc]则是代表匹配 a、b、c 三个字符中的任意一个字符
[root@chenstudy home]# ls -l /dev/sda
brw-rw----. 1 root disk 8, 0 4月 14 19:40 /dev/sda
[root@chenstudy home]# ls -l /dev/sda1
brw-rw----. 1 root disk 8, 1 4月 14 19:40 /dev/sda1
# 比如星号(*)代表匹配零个或多个字符
[root@chenstudy home]# ls -l /dev/sda*
brw-rw----. 1 root disk 8, 0 4月 14 19:40 /dev/sda
brw-rw----. 1 root disk 8, 1 4月 14 19:40 /dev/sda1
brw-rw----. 1 root disk 8, 2 4月 14 19:40 /dev/sda2
brw-rw----. 1 root disk 8, 3 4月 14 19:40 /dev/sda3
# 只想查看文件名为 sda 开头,但是后面还紧跟其他某一个字符的文件的相关信息就需要用到问号来进行通配了
[root@chenstudy home]# ls -l /dev/sda?
brw-rw----. 1 root disk 8, 1 4月 14 19:40 /dev/sda1
brw-rw----. 1 root disk 8, 2 4月 14 19:40 /dev/sda2
brw-rw----. 1 root disk 8, 3 4月 14 19:40 /dev/sda3
# 匹配任意的数字0-9
[root@chenstudy home]# ls -l /dev/sda[0-9]
brw-rw----. 1 root disk 8, 1 4月 14 19:40 /dev/sda1
brw-rw----. 1 root disk 8, 2 4月 14 19:40 /dev/sda2
brw-rw----. 1 root disk 8, 3 4月 14 19:40 /dev/sda3
[root@chenstudy home]# ls -l /dev/sda[135]
brw-rw----. 1 root disk 8, 1 4月 14 19:40 /dev/sda1
brw-rw----. 1 root disk 8, 3 4月 14 19:40 /dev/sda3
常用的转义字符:为了能够更好地理解用户的表达,Shell 解释器还提供了特别丰富的转义字符来处理输入 的特殊数据
#先定义一个名为 PRICE 的变量并赋值为 5,然后输出以双引号括起来的字符串与变量信息:
[root@chenstudy ~]# PRICE=5
[root@chenstudy ~]# echo "PRICE IS $PRICE"
PRICE IS 5
# 输出“Price is $5”
[root@chenstudy ~]# echo "PRICE IS \$$PRICE"
PRICE IS $5
# 反引号与 uname -a 命令结合,然后使用 echo 命令来查看本机的 Linux版本和内核信息:
[root@chenstudy ~]# echo `uname -a`
Linux chenstudy 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
[root@chenstudy ~]# ls
anaconda-ks.cfg ch initial-setup-ks.cfg stderr.txt 公共 模板 视频 图片 文档 下载 音乐 桌面
[root@chenstudy ~]# rm anaconda-ks.cfg
rm:是否删除普通文件 "anaconda-ks.cfg"?y
[root@chenstudy ~]# alias rm
alias rm='rm -i'
[root@chenstudy ~]# unalias rm
[root@chenstudy ~]# rm initial-setup-ks.cfg
[root@chenstudy ~]#
[root@chenstudy ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@chenstudy ~]# PATH=$PATH:/root/bin
[root@chenstudy ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin
[root@chenstudy ~]#
变量名称 | 作用 |
---|---|
HOME | 用户的主目录(即家目录) |
SHELL | 用户在使用的Shell解释器名称 |
HISTSIZE | 输出的历史命令记录条数 |
HISTFILESIZE | 保存的历史命令记录条数 |
邮件保存路径 | |
LANG | 系统语言、语系名称 |
RANDOM | 生成一个随机数字 |
PS1 | Bash解释器的提示符 |
PATH | 定义解释器搜索用户执行命令的路径 |
EDITOR | 用户默认的文本编辑器 |
[root@chenstudy ~]# echo $HOME
/root
[root@chenstudy ~]# su - chen
上一次登录:二 4月 12 22:16:24 CST 2022:0 上
[chen@chenstudy ~]$ echo $HOME
/home/chen
# 变量是由固定的变量名与用户或系统设置的变量值两部分组成的,我们完全可以自行创建变量,来满足工作需求
[root@chenstudy ~]# mkdir /home/workdir
[root@chenstudy ~]# WORKDIR=/home/workdir
[root@chenstudy ~]# cd $WORKDIR
[root@chenstudy workdir]# pwd
/home/workdir
[root@chenstudy workdir]#
# 上述方式的变量不具有全局性,工作需要时可以使用export命令将其提升为全局变量
[root@chenstudy workdir]# su - chen
上一次登录:四 4月 14 23:02:17 CST 2022pts/2 上
[chen@chenstudy ~]$ cd $WORKDIR
[chen@chenstudy ~]$ echo $WORKDIR
[chen@chenstudy ~]$ exit
登出
[root@chenstudy workdir]# su - root
上一次登录:四 4月 14 23:03:02 CST 2022pts/2 上
[root@chenstudy ~]# export WORKDIR
[root@chenstudy ~]# cd /home/workdir/
[root@chenstudy workdir]# su - chen
上一次登录:四 4月 14 23:06:08 CST 2022pts/2 上
用户默认的文本编辑器 |
[root@chenstudy ~]# echo $HOME
/root
[root@chenstudy ~]# su - chen
上一次登录:二 4月 12 22:16:24 CST 2022:0 上
[chen@chenstudy ~]$ echo $HOME
/home/chen
# 变量是由固定的变量名与用户或系统设置的变量值两部分组成的,我们完全可以自行创建变量,来满足工作需求
[root@chenstudy ~]# mkdir /home/workdir
[root@chenstudy ~]# WORKDIR=/home/workdir
[root@chenstudy ~]# cd $WORKDIR
[root@chenstudy workdir]# pwd
/home/workdir
[root@chenstudy workdir]#
# 上述方式的变量不具有全局性,工作需要时可以使用export命令将其提升为全局变量
[root@chenstudy workdir]# su - chen
上一次登录:四 4月 14 23:02:17 CST 2022pts/2 上
[chen@chenstudy ~]$ cd $WORKDIR
[chen@chenstudy ~]$ echo $WORKDIR
[chen@chenstudy ~]$ exit
登出
[root@chenstudy workdir]# su - root
上一次登录:四 4月 14 23:03:02 CST 2022pts/2 上
[root@chenstudy ~]# export WORKDIR
[root@chenstudy ~]# cd /home/workdir/
[root@chenstudy workdir]# su - chen
上一次登录:四 4月 14 23:06:08 CST 2022pts/2 上