本文用于记录linux学习的过程,学习材料为《linux就该这么学》,感谢作者大佬的无私奉献。
2.2 帮助命令
man
- 空格、pagedown :下翻一页
- pageup:上翻一页
- home:转到首行
- end:转到尾行
- /:向下查找
- ?:向上查找
- n:下一个匹配
- N:上一个匹配
2.3 常用系统工作命令
echo
- $+变量 :输出变量内容
- +字符串 :原样输出字符串
date
- -c :设置日期和时间
-
“+%····” :格式化输出日期和时间
- %Y:年份,eg:2020
- %y:年份的后两位,eg:20
- %m:两位数月份,eg:07
- %d:两位数日,eg:03
- %e:前面补空格的日,eg:_3
- %p:大写AM、PM
- %P:小写am、pm
- %j:一年中的第几天
- %F:="%Y-%m-%d",eg: 2020-03-05
- %D:="%m/%d/%y",eg: 03/05/20
- %r:="%I:%m:%S %p",eg: 07:24:15 PM
- %R:="%H:%m",eg: 19:24
reboot
- ** ** :
poweroff
- ** ** :
wget
- -b :后台下载
- -P :指定下载位置
- -t :最大尝试次数
- -C :断点续传
- -p :下载页面所有资源,包括图片、视频等
- -r :递归下载
ps
- -a :显示所有进程,包含其他用户的
- -u :显示用户及其他详细信息
- -x :显示没有控制终端的进程
-
进程的状态
-- R: 运行,进程正在运行或在队列中等待
-- S: 中断,处于休眠中
-- D: 不可中断,???
-- Z: 僵死,???
-- T: 停止 - 该命令允许参数不写“-”符号
top
-
第1行 :系统时间、运行时间、登录终端数、系统负载(三个数值分别为 1 分钟、5
分钟、15 分钟内的平均值,数值越小意味着负载越低)。 -
第2行 :进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程
数。 -
第3行 :用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源
百分比、空闲的资源百分比等。(第 3 行中的数据均为 CPU 数据并以百分比格式显示,例如“97.1 id”意味着有 97.1%
的 CPU 处理器资源处于空闲。) - 第4行 :物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。
- 第5行 :虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量。
pidof
- +服务名称 : 返回服务id。
[root@linuxprobe ~]# pidof sshd
2156
kill
-
+进程PID : 终止该进程。
[root@linuxprobe ~]# kill 2156
killall
- +进程名称 : 终止该进程。
[root@linuxprobe ~]# pidof httpd
13581 13580 13579 13578 13577 13576
[root@linuxprobe ~]# killall httpd
[root@linuxprobe ~]# pidof httpd
[root@linuxprobe ~]#
2.4 系统状态检测命令
ifconfig
uname
- -a :完整地查看当前系统的内核名称、主机名、内核发行版本、节点名、系统时间、硬件名称、硬件平台、处理器类型以及操作系统名称等信息。
- 以上为内核信息,如果要查看当前系统版本的详细信息,则需要查看 redhat-release 文件
free
- -h :以友好格式显示,如数据单位等。
who
last
history
- -c :清空历史
- 历史命令会被保存到用户家目录中的.bash_history 文件中。 ~/.bash_history
sosreport
- 不知为啥,我的执行报错 :????
2.5 工作目录切换命令
pwd
cd
ls
- -a :查看全部,包括隐藏文件
- -l :显示文件属性、大小等
- -d :目录
2.6 文本文件编辑命令
cat
- -n :显示行号
more
head
- -n xx :显示前xx行
tail
- -n xx :显示后xx行
- -f :试试刷新
tr
- tr [原始字符] [目标字符]” :
-
cat 管道 tr :eg
cat anaconda-ks.cfg | tr [a-z] [A-Z]
wc
- -l :统计行数
- -w :单词数
- -c :字节数
stat
- Access :读取时间
- Modify :内容修改时间
- Change :权限、属性修改时间
cut
- -d :分割符
- -f :显示第几列
diff
- -c :显示具体的不同
- -brief :只返回比较结果(不同时)
2.7 文件目录管理命令
touch
- -a :读取时间
- -m :内容修改时间
- -d :-am
mkdir
- -p :多层目录
cp
- -p :保留源文件属性
- -d :若对象为“链接文件”,则保留该“链接文件”的属性
-
-r :递归复制(目录)
--i :询问是否覆盖
--a :-pdr
mv
rm
- -r :删除目录
- -f :强制删除,不提示
dd
- if :输入文件
- of :输出文件
- bs :块大小
- count :快数量
file
2.8 打包压缩与搜索命令
tar
- -c :压缩
- -x :解压缩
- -t :查看内容
- -v :显示进度
- -z :gzip格式 .tar.gz
- -j :bzip2格式 .tar.bz2
- -f :目标文件名
- -p :保留原始文件的权限和属性
- -P :使用绝对路径 ???
- -C :指定解压到
grep
- -b :将可执行文件(binary)当作文本文件(text)来搜索
- -c :进显示行号
- -i :忽略大小写
- -n :显示行号
- -v :反向选择
find
- -name :匹配名称
- -perm :匹配匹配权限(mode 为完全匹配,-mode 为包含即可)
- -user :匹配所有者
- -group :匹配所有组
- -mtime -n +n :匹配修改内容的时间(-n 指 n 天以内,+n 指 n 天以前)
- -atime -n +n :匹配访问文件的时间(-n 指 n 天以内,+n 指 n 天以前)
- -ctime -n +n :匹配修改文件权限的时间(-n 指 n 天以内,+n 指 n 天以前)
- -nouser :匹配无所有者的文件
- -nogroup :匹配无所有组的文件
- -newer f1 !f2 :匹配比文件 f1 新但比 f2 旧的文件
- **--type b/d/c/p/l/f ** :匹配文件类型(后面的字幕参数依次表示块设备、目录、字符设备、管道、链接文件、文本文件)
- -size :匹配文件的大小(+50KB 为查找超过 50KB 的文件,而-50KB 为查找小于50KB 的文件)
- -prune :忽略某个目录
- **-exec …… {}; ** 后面可跟用于进一步处理搜索结果的命令(下文会有演示)
进阶实验:在整个文件系统中找出所有归属于 linuxprobe 用户的文件并复制到/root/findresults 目录。该实验的重点是“-exec {} ;”参数,其中的{}表示 find 命令搜索出的每一个文件,并且命令的结尾必须是“;”。完成该实验的具体命令如下:
[root@linuxprobe ~]# find / -user linuxprobe -exec cp -a {} /root/findresults/ \;
网友评论