命令
系统工作
| 名称 | 操作 | 命令 | 其他 |
|---|
| echo | 输出字符串/变量提取值 | --- | |
| date | 显示/设置系统时间日期 | date -s ?? 不合法的参数 | |
| timedatectl | 设置系统时间 | --- | command not found: timedatectl |
| reboot | 重启系统 | --- | --- |
| poweroff | 关闭系统 | --- | --- |
| wget | 下载网络文件 | --- | zsh: command not found: wget |
| ps | 查看系统进程状态 | --- | --- |
| pstree | 查看树状图进程状态 | --- | --- |
| top | 监视进程活动及系统负载等信息 | -h | --- |
| nice | 调整进程优先级 | --- | --- |
| pidof | 查询制定服务进程pid号码值 | --- | command not found: pidof |
| kill | 终止指定pid服务进程 | kill -9 2156 // 强制杀死 | --- |
| killall | 终止指定名称服务对应全部进程 | --- | --- |
系统状态检测
| 名称 | 操作 | 命令 | 其他 |
|---|
| ifconfig | 获取网卡配置与网络状态等信息 | --- | ?? 网络信息 |
| uname | 查看系统内核版本与系统架构信息 | uname -a // 查看当前完整信息 | --- |
| uptime | 查看系统内核版本与系统架构信息 | --- | //显示当前系统时、已运行时间、启用终端数量、平均负载值等信息 |
| free | 显示当前系统内存的使用量信息 | free -h | --- |
| who | 查看当前登入主机的用户终端信息 | --- | --- |
| last | 调区主机被访问记录 | --- | --- |
| ping | 查看系统负载信息 | --- | --- |
| tracepath | 显示数据包达到目的主机时途中经过的所有路由信息 | --- | trancepath: command not found |
| netstat | 显示网络连接、路由表、接口状态 | --- | --- |
| history | 查看历史 | --- | --- |
| sosreport | 收集系统架构信息并输出诊断文档 | --- | zsh: command not found: sosrepoort |
查找定位文件
| 名称 | 操作 | 命令 | 其他 |
|---|
| tree | 展示目录结构树状图 | --- | zsh: command not found: tree |
| find | --- | -name 名称 / -perm 权限/ -user 匹配所有者 …… | --- |
| locate | 搜索文件位置按照名称 | --- | --- |
| whereis | 搜索二进制程序(命令)、源代码、帮助文件对应位置按名称 | --- | --- |
| which | 搜索二进制程序(命令)按指定名称 | --- | --- |
文件编辑
| 名称 | 操作 | 命令 | 其他 |
|---|
| cat | 查看较少纯文本文件 | cat -n 文件名 // 显示行号 | --- |
| more | 查看较多纯文本文件 | --- | --- |
| head | 查看纯文本前n行 | head -n 10 tinyDic.txt | --- |
| tail | 查看纯文本后n行/持续刷新最新内容 | tail -f 文件名 // 持续刷新 | --- |
| wc | 统计指定文本的行数、字数、字节数 | --- | --- |
| stat | 查看文件具体存储细节和时间等信息 | --- | --- |
| grep | 提取文本内容按行操作 | --- | --- |
| cut | 提取文本内容按列操作 | cut -d : -f 1 tinyDic.txt | --- |
| diff | 比较多个文件内容差异 | diff ---brief 文件名a 文件名b // 确认两个文件是否相同 ~~~diff -c 文件名a 文件名b // 具体不同 | --- |
| uniq | 去除文本连续重复的行 | --- | ?? |
| sort | 排序文本内容 | --- | ?? |
文件目录管理
| 名称 | 操作 | 命令 | 其他 |
|---|
| touch | 创建空白文本\设置文件时间 | touch -d "2020-05-04 15:44" l.txt | --- |
| mkdir | --- | mkdir -p a/b // 创建出具有嵌套层级 | --- |
| cp | 复制三种情况:1、如果目标文件是目录,会把原文件复制到该目录中2、如果目标文件是文件,询问是否覆盖它3、如果目标文件不存在,执行正常复制操作 | --- | ?? |
| mv | 剪切或重命名文件 | --- | ?? |
| rm | --- | --- | --- |
| dd | 复制或转换文件按照指定大小额个数的数据块 | --- | --- |
| file | 查看文件类型 | --- | --- |
| tar | --- | -c 创建压缩文件 ~~~ -x 解开压缩文件 | --- |
管道符、重定向、环境变量
输入重定向 文件导入到命令中
输出重定向 输出到屏幕的信息写入指定文件
vim常用命令
| 名称 | 操作 | 命令 | 其他 |
|---|
| yy | 复制 | --- | --- |
| dd | 删除并复制 | --- | --- |
| p | 粘贴 | --- | --- |
| u | 撤销 | --- | --- |
| :set nu | 显示行号 | :set nonu 不显示行号 | --- |
| :s/one/two | 将当前光标所在行第一个one替换成two | :s/one/two/g 将当前光标所在行所有one替换成two ~~~ :%s/one/two/g 将全文中所有one替换成two | --- |
| :/字符串 | 将文本中从上至下搜索该自符串 | :?字符串 将文本中从下至上搜索该自符串 | --- |
| :命令 | 执行该命令 | --- | --- |
| :整数 | 跳转到该行 | --- | --- |
vim参数
| 名称 | 操作 | 命令 | 其他 |
|---|
| $0 | 当前shell脚本名称 | --- | --- |
| $# | 对应总共有几个参数 | --- | --- |
| $* | 所有位置参数值 | --- | --- |
| $? | 显示上一次命令执行返回值 | --- | --- |
| $1 | 分别对应着第n个位置参数值 | --- | --- |
权限命令
用户权限
| 名称 | 操作 | 命令 | 其他 |
|---|
| id | 显示用户详细信息 | --- | --- |
| useradd | 创建用户账户 | --- | -bash: useradd: command not found |
| groupadd | 创建新的用户组 | --- | -bash: groupadd: command not found |
| usermod | 修改用户属性 | --- | -bash: usermod: command not found |
| password | 修改用户密码 | --- | -bash: password: command not found |
| userdel | 删除已有用户账户 | --- | -bash: userdel: command not found |
| su | --- | su - root | --- |
文件权限 - 特殊权限(针对某一类用户)
| 名称 | 操作 | 命令 | 其他 |
|---|
| SUID | 让二进制程序的执行者临时拥有所有者权限(仅对拥有执行权限的二进制程序有效) | u+s/u-s | // 不要将SUID权限设置到vim、cat、rm上 |
| SGID | 当对二进制程序进行设置时,能够让执行者临时获取文件所属组的权限/当对目录进行设置时,让目录内新创建的文件自动继承该目录原有用户组名称 | g+s/g-s | --- |
| SBIT | 保护位/除非是该目录所有者,否则无法删除文件 | o+t/o-t | --- |
| chmod | 设置文件的一般权限及特殊权限 | chmod -R o+t linux/ | --- |
| chown | 修改文件属性和权限 | --- | --- |
文件权限 - 文件隐藏属性(针对某一类用户)
| 名称 | 操作 | 命令 | 其他 |
|---|
| chattr | 设置文件隐藏权限 | -h/+[a-z]文件属性 | // 属性有多个 |
| lsattr | 查看文件隐藏权限 | --- | --- |
文件权限 - 文件访问控制列表(针对某个指定用户进行单独权限控制)
| 名称 | 操作 | 命令 | 其他 |
|---|
| setfacl | 管理文件ACL权限控制 | -h | // ??属性 |
| getfacl | 查看文件ACL权限规则 | -h | // ACL权限设置永久生效,需要备份 getfacl -R home > backup.acl setfacl --restore backup.acl |
磁盘管理
| 名称 | 操作 | 命令 | 其他 |
|---|
| mount | 挂载硬件设备 | -h | --- |
| unmount | 卸载设备或文件系统 | --- | --- |
| df | 查看已挂载磁盘使用情况 | df -h | --- |
| du | 查看分区或目录所占用的磁盘容量大小 | -h | --- |
| fdisk | 新建、修改删除磁盘分区 | -h | --- |
ssh
配置sshd 服务
- 客户端主机生成密钥对 ssh-keygen
- 客户端主机中生成的公钥文件传送至远程服务器 ssh-copy-id 192.168.10.10
- 设置服务器,只允许密钥验证,拒绝传统的密码验证方式(修改配追文件后保存并重启sshd服务进程)
- 客户端登陆到服务器
ssh命令
| 名称 | 操作 | 命令 | 其他 |
|---|
| scp | 把文件从本地复制到远程主机 把远程服务器上的文件下载到本地主机 | scp /root/readme.txt 192.168.10.10:/home scp 192.168.10.10:/etc/redhat-release /root | // 如果想要使用指定用户的身份进行验证,使用用户名@主机地址的参数格式 // scp[参数]远程用户@远程ip地址:远程文件 本地目录 |