强大的SHELL Shell 就是充当人与linux内核之间的翻译官 命令名称 【命令参数】【命令对象】 长格式: man --help 短格式: man -h 例如:man cat 1、常用系统工作命令 (1)man 命令常用的按键以及用途 空格键 向下翻一行 page up 向上翻一页 page down 向下翻一行 home 直接前往首页 end 直接前往尾页 / 从上至下搜索某个关键字,如“/cat” ? 从下至上搜索某个关键字,如“?cat” n 定位到下一个搜索到的关键字 N 定位到上一个搜索到的关键字 q 退出帮助文档 (2)echo命令 echo命令用户在终端上输出字符串或变量提取后的值,如下: 使用变量$的方式提取变量SHELL的值,并输出到屏幕上
(3)date命令 date命令用于显示以及设置系统时间或者日期格式为date+[选项]+[+指定格式] 具体使用如下案例,查看时间,设置时间,显示时间等 (4)reboot命令 reboot命令用户重启系统 (5)poweroff命令 poweroff命令用户关闭系统 (6)wget命令 -b 后台下载模式 -p 下载到制定目录 -t 最大尝试次数 -c 断点续传 -p 下载页面内所有的资源,包括图片、视频等 -r 递归下载 [root@huangjin ~]# wget http://www.linuxprobe.com/docs/LinuxProbe.pdf [root@huangjin ~]# wget -r -p http://www.linuxprobe.com/ (7)ps命令 ps命令用于查看系统中的进程,格式为“ps [参数]” -a 显示所有进程,包括其他用户的进程 -u 用户以及其他详细信息 -x 显示没有控制终端的进程 linux系统中存在多种进程,合理的管理进程有助于优化系统的性能,5种常见的进程:分别为运行、中断、不可中断、僵死、停止;其各自的含义如下: R 运行 S 中断 D 不可中断 Z 僵死 T 停止 执行ps aux命令可以看到详细的进程状态信息 (8)top命令 top命令用于动态的监控进程活动与系统负载等信息,这个命令非常强大,完全将他看作linux的强化版本的windows任务管理器 1:系统时间、运行时间、登录终端数、系统负载(三个数值分别为1分钟,5分钟15分钟内的平均值,数值越小意味着负载越低) 2:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数 3:用户占用资源的百分比、系统内核占用资源的百分比、改变过优先级的进程资源百分比、空闲资源的百分比 4:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量 5、虚拟内存量、女婿你内存使用量、虚拟内存空闲量、已被提前加载的内存量 (9)kill命令 kill命令用户终止某个指定ID的服务进程,格式为kill [参数] [服务名称] kill 2156 (10) pidof命令 pidof命令查看指定服务的进程ID值 (11)killall命令 killall命令用户终止莫格指定名称的服务所有对应的全部进程 2、系统状态检测命令 (1)ifconfig命令 ifconfig命令用户获取网卡信息与网络状态等信息 (2)uname命令 uname命令用于查看系统内核与系统版本等信息 cat /etc/redhat-release 查看系统版本的详细信息 (3)uptime uptime用于查看系统的负载信息,平均负载值指的是系统在最近1分钟,5分钟,15分钟内的压力情况,负载越低越好,尽量不要超过1,在生产情况下不要超过5 (4)free命令 free命令显示当前内存的使用率信息,分别是:内存总量、已用量、可用量、进程共享的内存量、磁盘缓存的共享量、缓存的内存量 (5)who命令 who命令用于查看当前登陆人的用户终端信息 (6)last命令 last用户查看所有系统的登陆记录 (7)history history用户显示历史执行过的命令,显示最近1000条命令记录,如果觉得1000条命令记录不够,可以自己修改/etc/profile中的HISTSIZE变量值,可以使用-c参数清空所有历史命令记录,还可以使用“!编码数字”的方式重复执行某一次命令等 (8)sosreport命令 sosreport命令用于收集系统配置及架构信息并输出诊断文档,格式为sosreport 3、工作目录切换命令 (1)pwd命令 pwd命令用于查看用户当前所处的位置 (2)cd命令 cd命令用于切换目录路径,cd -是返回上一级目录,cd ~返回家目录 (3)ls命令 ls命令用于显示目录中的文件信息 4、文件文本编辑命令 (1)cat命令 cat用于查看纯文本文件,参数-n是显示行数 (2)more命令 more命令用于查出纯文本文件,内容较多的情况下,more会分页显示,且会显示百分比的形式提示你已经阅读多少了 cd (3)head命令 head命令用户查看纯文本文件的前N行 (4)tail命令 tail命令用于查看纯文本文件的后N行,或者持续刷新内容 -f参数持续查看最新的日志信息,-n + 数字是显示多少行。和head类似
(5)tr命令 tr命令用于替换文本文件中的字符 (6)wc命令 wc命令用于统计文本的行数、字数、字节数,-l只显示行数,-w只显示单词数,-只显示字节数 (7)start命令 start命令用户查看文件的具体存储信息和时间等信息,三种时间状态:Access,Modify,Change (8)cut命令 cut命令用于按列提取文本字符,案例是提议以:为间隔符号的第一列内容 (9)diff命令 diff用于比较多个文件文件的差异,--brief参数显示比较后的结果,判断文件是否相同,-c参数描述文件的具体的不同 4、文件目录管理命令 (1)touch命令 touch命令用户创建空白文件,或者设置文件的时间 -a 仅修改读取时间(atime) -m仅修改修改时间(mtime) -d同时修改atime和mtime (2)mkdir命令 mkdir命令用于创建空白目录,也可以递归创建目录 (3)cp命令 cp命令用于复制文件或目录,cp 源目录 目标目录 -p 保留原始文件的属性 -d 若对象为"链接文件",则保留该“链接文件”的属性 -r递归持续复制(用户目录) -i若目标文件存在则询问是否覆盖 -a相当于-dpr(pdr是上述参数) (4)mv命令 mv命令用户剪切或者文件重命名,默认会将源文件删除; (5)rm命令 rm名用于删除文件或者目录 -r参数用于删除目录,-f参数用于强制性删除文件 (6)dd命令 dd命令用于按照大小和个数的数据块来复制文件或者转换文件 参数: if 输入的文件名称 of 输出文件的名称 bs 设置每个块的大小 count 设置要复制块的个数 例如在/dev/zero设备文件中去一个大小为560M的数据块,然后命名为560_file的文件,如下 强大的功能是进行文件格式转换,比如光驱中的光盘制作成iso格式的文件,这个时候就可以使用dd命令直接转换 (7)file命令 file命令用于查看文件的类型 5、打包压缩和搜索命令 (1)tar命令 tar命令用于对文件进行打包压缩或者解压 参数: -c 创建压缩文件 -x 解开压缩文件 -t 查看压缩文件有那些文件 -z 用gizp压缩或者解压 -j 用bzip2压缩或者解压 -v 显示压缩或者解压的过程 -f 保留文件名 -P 保留原始的权限于属性 -p 使用绝对路径来压缩 -C 指定解压的目录 压缩 解压 (2)grep命令 grep命令用于在文本中执行关键字的搜索并显示匹配的结果 -b 将执行文件(binary)当作文本文件(txt)搜索 -c 仅显示找到的行数 -i 忽略大小写 -n 显示行号 -v 反向选择,仅列出没有的关键词的行 通常情况下-n 和-v能解决大部分问题,例如/etc/passwd 文件是保存着所有的用户信息,而一旦用户的登陆终端备设置成/sbin/nologin 则不允许登陆系统,因此可以使用grep命令来查询出当前系统中不允许登陆系统的所有用户信息
(3)file命令 file命令用于按照制动条件来查找文件 参数如下: -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天以前) -nouesr 匹配无所有者的文件 -nogroup 匹配无所有组的文件 -newer f1 !f2 匹配比文件f1新单比文件f2旧的文件 --type b/d/c/p/f 匹配文件类型(后面字母依次表示:块文件、目录、字符设备、管道、链接文件、文本文件) -size 匹配文件的大小(+50为查找超过50KB的文件,而-50KB为查找小于50KB的文件) -prune忽略某个文件 -exec .......{};后面可跟用于进一步处理搜索结果的命令