一、命令组成
一个完整的命令通常由 命令名称 [命令参数] [命令对象] 组成。
注意:命令名称、命令参数、命令对象之间用空格键隔开。
二、系统工作命令
查看主机名称
echo $HOSTNAME
查看系统当前时间,按照 年-月-日 时-分-秒 格式
date "+%Y-%m-%d %H:%M:%S"
root用户重启系统
reboot
下载网络文件
wget [参数] 下载地址
参数 | 作用 |
-b | 后台下载模式 |
-O | 下载到指定目录 |
-t | 最大尝试次数 |
-c | 断点续传 |
-p | 下载页面内所有资源,包括图片视频等 |
-r | 递归下载 |
三、系统状态检测命令
获取网卡配置与网络状态等信息
ifconfig
查看系统内核版本等信息
uname -a
查看系统负载情况
uptime
查看系统内存使用情况 free[-m/-g]
以m为单位显示
free -m
查看当前登录主机的用户情况
who
查看系统所有的登录记录
last
查看历史执行过的命令
history
清空执行过命令的历史记录
history -c
四、工作目录切换命令
查看当前工作目录
pwd
切换工作路径
cd [目录名称]
参数 | 作用 |
- | 切换到上一次的目录,如“cd -” |
~ | 切换到“家目录”,如“cd ~” |
~username | 切换到其他用户的家目录,如“cd ~teak” |
.. | 切换到上级目录,如“cd ..” |
查看目录中有哪些文件
ls [参数] [文件]
参数 | 作用 |
-a | 查看全部文件(包括隐藏文件) |
-d | 仅查看目录本身 |
-h | 易读的文件容量(如:k.m.g) |
-l | 显示文件的详细信息 |
五、文本文件编辑命令
查看纯文本文件(较短的)
cat [参数] [文件]
参数 | 作用 |
-n | 显示行号 |
-b | 显示行号(不包括空行) |
-A | 显示出“不可见”的符号,如空格,tab键等等 |
查看纯文本文件(较长的)
more [参数] [作用]
参数 | 作用 |
-数字 | 预先显示的行数(默认文一页) |
-d | 显示提示语句与报错信息 |
查看纯文本文件的前n行
head [参数] [文件]
参数 | 作用 |
-n 10 | 显示10行 |
-n -10 | 正常输出(如cat命令),但不显示最后的10行 |
查看纯文本文档的后N行
tail [参数] [文件]
参数 | 作用 |
-n 10 | 显示后面的10行 |
-f | 持续刷新显示的内容 |
查看特殊格式的文件
od [参数] [文件]
参数 | 作用 |
-t a | 默认字符 |
-t c | ASCII字符 |
-t o | 八进制 |
-t d | 十进制 |
-t x | 十六进制 |
-t f | 浮点数 |
转化文本文件中的字符
tr [原始字符] 目标字符]
统计指定文本的行数、字数、字节数
wc [参数] 文本
参数 | 作用 |
-l | 只显示行数 |
-w | 只显示单词数 |
-c | 只显示字节数 |
通过列来提取字符
cut [参数] 文本
参数 | 作用 |
-d 分隔符 | 指定分隔符,默认为tab |
-f | 指定显示的列数 |
-c | 单位改为字符 |
比较多个文本之间的差异
diff [参数] 文件
参数 | 作用 |
-b | 忽略空格引起的差异 |
-B | 忽略空行引起的差异 |
-brief 或 -q | 仅报告是否存在差异 |
-c | 使用上下文输出格式 |
六、文件目录管理命令
创建空白文件或修改文件时间
touch [参数] [文件]
Linux 中的文件有三种时间
更改时间(mtime):内容修改时间
更改权限(ctime):更改权限与属性的时间
读取时间(atime):读取文件内容的时间
参数 | 作用 |
-a | 近修改“访问时间”(atime) |
-m | 近修改“更改时间”(mtime) |
-d | 同时修改atime 与 mtime |
-t | 要修改成的时间 [YYMMDDhhmm] |
创建空白文件夹
mkdir [参数] 目录
参数 | 作用 |
-m=MODE | 默认的文件目录权限,如“-m755” |
-p | 连续创建多层目录(若文件夹存在则忽略) |
-v | 显示创建过程 |
复制文件或目录
cp [参数] 源文件 目标文件
参数 | 作用 |
-p | 保留原文件的属性 |
-d | 若对象为“链接文件”,则保留“连接文件”的属性 |
-r | 递归持续复制(用于目录) |
-i | 若目标存在则询问是否覆盖 |
-a | 相当于-pdr(p/d/r为上述的参数) |
移动文件或改名
mv [选项] 文件名 [目标路径|目标文件名]
删除文件或目录
rm [参数] 文件
参数 | 作用 |
-f | 忽略警告信息 |
-i | 删除前先询问 |
-r | 删除文件夹 |
注:Linux系统中还有一个 rmdir命令,他不同于rm -rf 命令会删除一切,而是仅删除空目录,遇到目录内有文件则报错
七、用户和组管理命令
创建新用户
useradd [参数] 用户名
参数 | 作用 |
-d | 指定用户的家目录(默认为 /home/username) |
-D | 展示默认值 |
-e | 账号有效截止日期,格式:YYYY-MM-DD |
-g | 指定一个初始用户组(必须已存在) |
-G | 指定一个或多个扩展用户组 |
-N | 不创建与用同名的用户组 |
-s | 指定默认的Shell |
-u | 指定用户的UID |
修改用户密码
passwd [参数] [用户名]
修改当前用户:“passwd”
修改其他用户:“passwd 其他用户名”
参数 | 作用 |
-l | 锁定用户禁止其登录 |
-u | 解除锁定,允许用户登录 |
-stdin | 允许从标准输入修改用户密码,如(echo "NewPassWord" | passwd -stdin Username) |
-d | 使账号无密码 |
-e | 强制用户下次登录时修改密码 |
-S | 显示用户的密码状态 |
删除用户所以表格
userdel [选项] 用户名
参数 | 作用 |
-f | 强制删除用户,家目录与其相关文件 |
-r | 同时删除用户,家目录与其相关文件 |
修改用户属性
usermod [选项] 用户名
参数 | 作用 |
-c | 填写账号的备注信息 |
-d -m | -m与-d连用,可重新指定用户的家目录并自动将旧的数据转移过去 |
-e | 账户到期时间,格式“YYYY-MM-DD” |
-g | 变更所属用户组 |
-G | 变更扩展用户组 |
-L | 锁定用户禁止其登录系统 |
-U | 解锁用户,允许其登录系统 |
-s | 变更默认终端 |
-u | 修改用户的UID |
创建群组
groupadd [选项] 群组名
八、打包压缩文件命令
对文件打包压缩或解压
tar [选项] [文件]
参数 | 作用 |
-c | 创建压缩文件 |
-x | 解开压缩文件 |
-t | 查看压缩包内有那些文件 |
-z | 使用Gzip压缩或解压 |
-j | 用bzip2压缩或解压 |
-v | 显示压缩或解压的过程 |
-f | 目标文件名 |
-p | 保留原始的权限与属性 |
-P | 使用绝对路径来压缩 |
-C | 指定解压到的目录 |
九、文件查询搜索命令
对文本进行搜索
grep [选项] [文件]
参数 | 作用 |
-b | 将可执行文件(binary)当做文本文件(test)来搜索 |
-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 | 匹配无所有组的文件 |
-newerrr f1 !f2 | 匹配比文件f1新却比文件f2旧得文件 |
-type b/d/c/p/l/f | 匹配文件类型(块设备、目录、字符设备、管道、链接文件、文本文件) |
-size | 匹配文件大小(+50k查找超过50k的文件,而-50k则代表查找小于50k的文件) |
-prune | 忽略某个目录 |
-exec {} \; | 后面可接对搜索到结果进一步处理的命令 |