man命令
可用于查看命令的具体可用参数与对象格式等等。
输入字符“man man”来用man命令查看自身的帮助信息。


man命令的可用帮助文档分类有:
| 
 代码  | 
 代表内容  | 
| 
 1  | 
 普通的命令  | 
| 
 2  | 
 内核调用的函数与工具  | 
| 
 3  | 
 常见的函数与函数库  | 
| 
 4  | 
 设备文件的说明  | 
| 
 5  | 
 配置文件  | 
| 
 6  | 
 游戏  | 
| 
 7  | 
 惯例与协议  | 
| 
 8  | 
 管理员可用的命令  | 
| 
 9  | 
 内核相关的文件  | 
一般来讲帮助文件都很长很多,如果你想翻看的话,就要理解帮助文档的目录结构与操作方法:
| 
 结构名称  | 
 代表意义  | 
| 
 NAME  | 
 命令的名称  | 
| 
 SYNOPSYS  | 
 参数的大致使用方法  | 
| 
 DESCRIPTION  | 
 介绍说明  | 
| 
 EXAMPLES  | 
 演示(附带简单说明)  | 
| 
 OVERVIEW  | 
 概述  | 
| 
 DEFAULTS  | 
 默认的功能  | 
| 
 OPTIONS  | 
 具体的可用选项(带介绍)  | 
| 
 ENVIRONMENT  | 
 环境变量  | 
| 
 FILES  | 
 用到的文件  | 
| 
 SEE ALSO  | 
 相关的资料  | 
| 
 HISTORY  | 
 维护历史与联系方式  | 
man命令的操作按键:
| 
 按键  | 
 用处  | 
| 
 空格键  | 
 向下翻一页。  | 
| 
 [Page Down]  | 
 向下翻一页。  | 
| 
 [Page Up]  | 
 向上翻一页。  | 
| 
 [HOME]  | 
 直接前往首页。  | 
| 
 [END]  | 
 直接前往尾页。  | 
| 
 /关键词  | 
 从上至下搜索某个关键词,如"/linux"。  | 
| 
 ?关键词  | 
 从下至上搜索某个关键词,如"?linux"。  | 
| 
 n  | 
 定位到下一个搜索到的关键词。  | 
| 
 N  | 
 定位到上一个搜索到的关键词。  | 
| 
 q  | 
 退出帮助文档。  | 
echo命令
用于在终端显示字符串或变量,格式为:“echo [字符串 | 变量]”。
将echo命令的字符串输出到终端:
[root@linuxprobe ~]# echo Linuxprobe.Com

用echo命令查看SHELL变量的值(前面有$符号):
[root@linuxprobe ~]# echo $SHELL

查看本机主机名:
[root@linuxprobe ~]# echo $HOSTNAME
 
date命令
用于显示/设置系统的时间或日期,格式为:”date [选项] [+指定的格式]”。
强大的date命令能够按照指定格式显示系统的时间或日期,只需键入”+”号开头的字符串指定其格式,详细格式如下:
| 
 参数  | 
 作用  | 
| 
 %t  | 
 跳格[TAB键]  | 
| 
 %H  | 
 小时(00-23)  | 
| 
 %I  | 
 小时(01-12)  | 
| 
 %M  | 
 分钟(00-59)  | 
| 
 %S  | 
 秒(00-60)  | 
| 
 %X  | 
 相当于%H:%M:%S  | 
| 
 %Z  | 
 显示时区  | 
| 
 %p  | 
 显示本地AM或PM  | 
| 
 %A  | 
 星期几 (Sunday-Saturday)  | 
| 
 %a  | 
 星期几 (Sun-Sat)  | 
| 
 %B  | 
 完整月份 (January-December)  | 
| 
 %b  | 
 缩写月份 (Jan-Dec)  | 
| 
 %d  | 
 日(01-31)  | 
| 
 %j  | 
 一年中的第几天(001-366)  | 
| 
 %m  | 
 月份(01-12)  | 
| 
 %Y  | 
 完整的年份  | 
查看当前的系统时间:
[root@linuxprobe ~]# date

按照”年-月-日 小时:分钟:秒”的格式:
[root@linuxprobe ~]# date "+%Y-%m-%d %H:%M:%S"

设置系统时间为2019年10月22日8点半:
[root@linuxprobe ~]# date -s "20191022 8:30:00"
 
查看当前系统时间:
[root@linuxprobe ~]# date

查看本地系统时区:
[root@linuxprobe ~]#date "+%Z"

查看星期几:
[root@linuxprobe ~]# date "+%A"

输入当前是上午还是下午:
[root@linuxprobe Desktop]# date "+%p"

判断今天是一年中的第几天:
[root@linuxprobe ~]# date "+%j"

reboot命令
用于重启系统(仅root用户可以使用),格式为:”reboot”。
重启计算机:
[root@linuxprobe ~]# reboot

Ifconfig命令
用于获取网卡配置与网络状态等信息:格式为”ifconfig [网络设备] [参数]”。
查看本机当前的网卡配置与网络状态等信息:
[root@linuxprobe ~]# ifconfig

uname命令
用于查看系统内核版本等信息,格式为:“uname [-a]”。
查看系统的内核名称、内核发行版、内核版本、节点名、硬件名称、硬件平台、处理器类型、操作系统等信息:
[root@linuxprobe ~]# uname -a

如果想查看系统详细版本信息就看redhat-release文件:
[root@linuxprobe ~]# cat /etc/redhat-release

free命令
用于显示当前系统中内存的使用量情况,格式为:“free [-m/-g]”。
以m为单位显示当前系统中内存的使用量情况:
[root@linuxprobe ~]# free -m

| 
 
  | 
 总计内存量  | 
 已用量  | 
 可用量  | 
 进程共享的内存量  | 
 磁盘缓存的内存量  | 
 缓存的内存量  | 
| 
 
  | 
 total  | 
 used  | 
 free  | 
 shared  | 
 buffers  | 
 cached  | 
| 
 Mem:  | 
 1483  | 
 885  | 
 598  | 
 9  | 
 0  | 
 255  | 
| 
 -/+ buffers/cache:  | 
 
  | 
 628  | 
 855  | 
 
  | 
 
  | 
 
  | 
| 
 Swap:  | 
 2047  | 
 0  | 
 2047  | 
 
  | 
 
  | 
 
  | 
who命令
用于查看当前登入主机的用户情况,格式为:”who [参数]”。
查看当前登入主机用户的情况:
[root@linuxprobe ~]# who

| 
 登陆的用户名  | 
 终端设备  | 
 登陆到系统的时间  | 
| 
 root  | 
 :0  | 
 2015-08-24 17:52 (:0)  | 
| 
 root  | 
 pts/0  | 
 2015-08-24 17:52 (:0)  | 
history命令用于显示历史执行过的命令,格式为:“history [-c]”。
查看当前用户在系统中执行过的命令:
[root@linuxprobe ~]# history

历史命令会被保存到用户家目录中的”.bash_history“文件中。Linux系统中以点(.)开头的文件均代表隐藏文件,一般会是系统文件。
[root@linuxprobe ~]# cat ~/.bash_history

清空该用户在本机中执行过命令的历史记录:
[root@linuxprobe ~]# history -c

history默认会保存1000条执行过的命令,若要修改可直接编辑/etc/profile文件的HISTSIZE值。
pwd命令
用于显示当前的工作目录,格式为:“pwd [选项]”。
| 
 参数  | 
 作用  | 
| 
 -P  | 
 显示真实路径。(即非快捷链接的地址)  | 
查看当前的工作路径:
[root@linuxprobe etc]# pwd

cd命令
用于切换工作路径,格式为:“cd [目录名称]”。
| 
 参数  | 
 作用  | 
| 
 -  | 
 切换到上一次的目录,如“cd -”  | 
| 
 ~  | 
 切换到“家目录”,如"cd ~"  | 
| 
 ~username  | 
 切换到其他用户的家目录,如"cd ~teak"  | 
| 
 ..  | 
 切换到上级目录,如"cd .."  | 
切换进/etc目录中:
[root@linuxprobe ~]# cd /etc

切换进/bin目录中:
[root@linuxprobe etc]# cd /bin

返回上级目录(即/etc目录):
[root@linuxprobe bin]# cd -

返回用户自己的家目录:
[root@linuxprobe etc]# cd ~

ls命令
用于查看目录中有那些文件,格式为:“ls [选项] [文件] ”。
查看当前目录下有那些文件(长格式):
[root@linuxprobe etc]# ls -al

| 
 参数  | 
 作用  | 
| 
 -a  | 
 查看全部文件(包括隐藏文件)  | 
| 
 -d  | 
 仅看目录本身  | 
| 
 -h  | 
 易读的文件容量(如k,m,g)  | 
| 
 -l  | 
 显示文件的详细信息  | 
查看/etc目录中有那些文件:
[root@linuxprobe ~]# ls /etc

查看/etc目录的权限与属性:
[root@linuxprobe ~]# ls -ld /etc

追加-h参数,以K/M/G为单位显示容量:
[root@linuxprobe ~]# ls -ldh /etc

cat命令
用于查看纯文本文件(较短的),格式为:“cat [选项] [文件]”。
查看文本文件:
[root@linuxprobe ~]# cat 文件名
| 
 参数  | 
 作用  | 
| 
 -n  | 
 显示行号  | 
| 
 -b  | 
 显示行号(不包括空行)  | 
| 
 -A  | 
 显示出“不可见”的符号,如空格,tab键等等  | 
touch命令
用于创建空白文件与修改文件时间,格式为:“touch [选项] [文件]”。
mkdir命令
用于创建空白的文件夹,格式为:“mkdir [选项] 目录”。
创建文件夹:
[root@linuxprobe ~]# mkdir 文件夹名
| 
 参数  | 
 作用  | 
| 
 -m=MODE  | 
 默认的文件目录权限,如"-m 755"  | 
| 
 -p  | 
 连续创建多层目录(若文件夹已存在则忽略)  | 
| 
 -v  | 
 显示创建的过程  | 
创建一个名字叫linuxprobe的目录:
[root@linuxprobe ~]# mkdir linuxprobe

使用ls命令查看该目录的权限属性等信息:
[root@linuxprobe ~]# ls -ld linuxprobe/

还记得刚刚用cd命令进入linuxprobe目录吗?这里是个小技巧,变量!$或(键盘按键)代表上一条命令的参数。
[root@linuxprobe ~]# cd !$

pwd命令也是刚刚学习过的,用于显示当前的工作路径。
[root@linuxprobe linuxprobe]# pwd

一次创建5个目录a/b/c/d/e:
[root@linuxprobe linuxprobe]# mkdir -p a/b/c/d/e

查看目录的属性,验证是否成功:
[root@linuxprobe linuxprobe]# ls -ld a/b/c/d/e/

cp命令
用于复制文件或目录,格式为:“cp [选项] 源文件 目标文件”。
复制命令的三种情况:
目标文件是一个目录,会将源文件复制到该目录中。
目标文件是一个文件,会将源文件覆盖该文件。
目标文件不存在,将会复制源文件并修改为目标文件的名称(重命名)。
| 
 参数  | 
 作用  | 
| 
 -p  | 
 保留原始文件的属性  | 
| 
 -d  | 
 若对象为"链接文件",则保留该"链接文件"的属性  | 
| 
 -r  | 
 递归持续复制(用于目录)  | 
| 
 -i  | 
 若目标文件存在则询问是否覆盖  | 
| 
 -a  | 
 相当于-pdr(p,d,r为上述的参数)  | 
创建一个名为install.log的文件:
[root@linuxprobe ~]# touch install.log

将install.log复制为x.log:
[root@linuxprobe ~]# cp install.log x.log

查看到确实出现了文件x.log
[root@linuxprobe ~]# ls

mv命令
用于移动文件或改名,格式为:“mv [选项] 文件名 [目标路径|目标文件名]”。
将文件aaa重命名为bbb:
[root@linuxprobe ~]# mv aaa bbb
rm命令
用于删除文件或目录,格式为:“rm [选项] 文件”。
删除普通文件并提示确认信息:“rm 文件名”
删除普通文件或目录文件,不提示:“rm -rf 文件或目录名”
| 
 参数  | 
 作用  | 
| 
 -f  | 
 忽略警告信息  | 
| 
 
  | 
 
  | 
| 
 
  | 
 
  | 
查看当前目录下的文件:
[root@linuxprobe ~]# ls

删除install.log文件,输入”y”即确认:
[root@linuxprobe ~]# rm install.log

删除x.log文件而无需确认:
[root@linuxprobe ~]# rm -rf x.log

Linux系统中还有一个rmdir命令,它不同于rm -rf命令会删除一切,而是仅删除空目录,遇到目录内有文件时则报错。
useradd命令
用于创建新的用户,格式为:“useradd [选项] 用户名”。
| 
 参数  | 
 作用  | 
| 
 -d  | 
 指定用户的家目录(默认为/home/username)  | 
| 
 -D  | 
 展示默认值  | 
| 
 -e  | 
 帐号有效截至日期,格式:YYYY-MM-DD.  | 
| 
 -g  | 
 指定一个初始用户组(必须已存在)  | 
| 
 -G  | 
 指定一个或多个扩展用户组  | 
| 
 -N  | 
 不创建与用户同名的用户组  | 
| 
 -s  | 
 指定默认的Shell  | 
| 
 -u  | 
 指定用户的UID  | 
创建名为linuxprobe的用户,并定义家目录路径、UID以及登陆解释器(不允许登陆):
[root@linuxprobe ~]# useradd -d /home/linux -u 8888 -s /sbin/nologin linuxprobe

查看linuxprobe用户的基本信息:
[root@linuxprobe ~]# id linuxprobe

passwd命令用于修改用户的密码,格式为:“passwd [选项] [用户名]”。
修改当前用户的密码:“passwd”
修改其他用户的密码:“passwd 其他用户名”
| 
 参数  | 
 作用  | 
| 
 -l  | 
 锁定用户禁止其登陆  | 
| 
 -u  | 
 解除锁定,允许用户登陆。  | 
| 
 --stdin  | 
 允许从标准输入修改用户密码,如(echo "NewPassWord" | passwd -stdin Username)  | 
| 
 -d  | 
 使帐号无密码  | 
| 
 -e  | 
 强制用户下次登陆时修改密码  | 
| 
 -S  | 
 显示用户的密码状态  | 
userdel命令
用于删除用户所有表格,格式为:“userdel [选项] 用户名”。
删除用户与其家目录:
[root@linuxprobe ~]# userdel -d 用户名
| 
 参数  | 
 作用  | 
| 
 -f  | 
 强制删除用户,家目录与其相关文件  | 
| 
 -r  | 
 同时删除用户,家目录与其相关文件  | 
usermod命令
用于修改用户的属性,格式为“usermod [选项] 用户名”。
| 
 参数  | 
 作用  | 
| 
 -c  | 
 填写帐号的备注信息  | 
| 
 -d -m  | 
 -m与-d连用,可重新指定用户的家目录并自动旧的数据转移过去。  | 
| 
 -e  | 
 帐户到期时间,格式“YYYY-MM-DD”  | 
| 
 -g  | 
 变更所属用户组  | 
| 
 -G  | 
 变更扩展用户组  | 
| 
 -L  | 
 锁定用户禁止其登陆系统  | 
| 
 -U  | 
 解锁用户,允许其登陆系统  | 
| 
 -s  | 
 变更默认终端  | 
| 
 -u  | 
 修改用户的UID  | 
groupadd命令
用于创建群组,格式为:”groupadd [选项] 群组名”。
创建名称为linuxprobe的用户群组:
[root@linuxprobe ~]# groupadd linuxprobe
tar命令
用于对文件打包压缩或解压,格式为:“tar [选项] [文件]”。
打包并压缩文件:“tar -czvf 压缩包名.tar.gz 文件名”
解压并展开压缩包:“tar -xzvf 压缩包名.tar.gz”
| 
 参数  | 
 作用  | 
| 
 -c  | 
 创建压缩文件  | 
| 
 -x  | 
 解开压缩文件  | 
| 
 -t  | 
 查看压缩包内有那些文件  | 
| 
 -z  | 
 用Gzip压缩或解压  | 
| 
 -j  | 
 用bzip2压缩或解压  | 
| 
 -v  | 
 显示压缩或解压的过程  | 
| 
 -f  | 
 目标文件名  | 
| 
 -p  | 
 保留原始的权限与属性  | 
| 
 -P  | 
 使用绝对路径来压缩  | 
| 
 -C  | 
 指定解压到的目录  | 
将/etc目录内文件打包并通过gzip格式压缩:
[root@linuxprobe ~]# tar czvf etc.tar.gz /etc

将etc.tar.gz解压到/root/etc目录中:
[root@linuxprobe ost ~]# mkdir /root/etc
开始解压etc.tar.gz文件:
[root@linuxprobe ~]# tar xzvf etc.tar.gz -C /root/etc
 
find命令
用于查找文件,格式为:“find [查找路径] 寻找条件 操作”。
这里需要注意下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  | 
 匹配文件的大小(+50k查找超过50k的文件,而-50k则代表查找小于50k的文件)  | 
| 
 -prune  | 
 忽略某个目录  | 
| 
 --exec {} \;  | 
 后面可接对搜索到结果进一步处理的命令(下面会有演示)  | 
搜索在/etc/中所有以host开头的文件:
其中的”host*”表示所有以host开头的文件:
[root@linuxprobe ~]# find /etc -name "host*" -print

搜索整个系统中所有包含SUID的文件(因SUID的数字表示法是4,而减号表示只要包含即可)。
[root@linuxprobe ~]# find / -perm -4000 -print
                    
                
                
            
        
浙公网安备 33010602011771号