Linux常用命令表
command(指令) [-options(选项)] arg(参数) agr2 ... // 一条指令的三要素之间要用空格隔开 // 多个命令要使用`;`隔开 // 如果一条命令不能再一行写完,在行尾使用`\`标明该条指令未结束 Tab键 // 按一下tab键表示文件名补齐 // 按两下tab键表示命令补齐 基本常用 man 命令名称 # 查询手册 - man 查看常数代表查找范围 例如c库 man 3 xxx echo将后边的文本显示出来 默认输出在屏幕上 # echo {num1..num2} 类似python range(num1,num2) 在num1前加上前缀类似字符串拼接 例如 echo{01,10} ->00,01...10 或 echo num{1,5} -> num1,num2...num5 - n # 表示取消输出每一行结尾的换行符 - e # 让echo支持 \n 等特殊转义字符 - A # 显示各种特殊符号(换行等) pwd # 当前目录 ls(list) /name # 查看name中的文件 - a # 查看隐藏文件 - l # 查看name中详细的文件 - F # 在目录文件后加 "/" 在其他文件类型后加各种符号区分 - t # 按照文件的修改时间进行排序 - r # 倒叙排列 - h # 人类可读 - i # 查看inode值 - lh # 查看文件大小等 - lhi # 每一列的含义(以空格拆分每一列)分别是 inode号码 文件的类型 文件权限(.与selinux有关) 文件的硬链接数量 文件的所有者 用户属于的家庭 文件的大小 文件的修改时间 文件名(文件名不是文件的属性) history [num] # 显示历史命令 如果指定num则显示固定的行 `其他命令` # 命令置换 例如: ls `pwd` # 先执行pwd的输出 然后再执行 ls pwd输出 cp(copy) # 复制 cp/name/files /目标文件夹 # 赋值files文件到目标文件夹 # 备份 cp/name/files /name/files.bak(后缀随便加) 原地备份 - r # 递归复制目录及其目录下的内容 - p # 复制的时候保持属性不变 - a # 复制所有 类似 -p,d,r mv(move) # 移动 mv /name/ /目标/ 将name文件夹移动到目标文件夹 # 可以进行改名操作 mv old_name new_name rm(remove) # 删除 rm/files.txt -> y/n 删除files文件 -> 删除/取消 - f # 删除文件不提示 - r # 递归删除目录及其目录下的内容 - rf # 递归删除目录及其目录下的内容不提示 用户相关 whoami # 查看当前用户 hostname # 查看当前主机名 useradd 用户名 # 添加用户 -d 指定用户家目录 -g 指定用户组 -G 指定用户的附加组 -s 指定登录后的shell -u 指定创建用户的uid -r 创建一个系统组 例如 useradd -r xxx 创建一个xxx系统用户 uid是根据系统分配倒序 centos7 从999-1 centos6 从499-1 usermode 用户名 # 更改用户的属性 与添加用户参数类似 -l 新用户名 旧用户名 # 改名 -m # 如果没有就创建 userdel 用户名 # 删除用户 - f 强制删除用户 - r 同时删除用户以及家目录 groupadd 用户组名 # 创建用户组 groupdel 用户组名 # 删除用户组 id 用户名 # 查看用户信息也能查看用户是否存在以及属于哪个用户组 passwd 用户名 # 添加密码、修改密码 su(switch user) - 用户名 # 切换用户 漏斗家族: | # 做数据传递使用 将 `|`左边指令的输出当做右边指令的输入 >(1>)# 标准输出重定向 先把文件内容清空 然后再将内容放在文件的最后一行 >> (1>>) # 追加重定向 把内容放在文件的最后一行 1 代表标准输出 执行正确的内容才会通过漏斗 2> # 标准错误重定向 2>> # 错误追加重定向 &> # 不论正确与否都输出 &>> # 不论正确与否都追加 >>/name/files 2>>/name/files # 同时记录文件的对错内容 或使用(2>&1) < # 输入重定向 << # 追加输入重定向 文件相关 file /name/files # 显示文件的详细类型 分为: executable # 命令 text # 文本文件 tar # 压缩包 wc # wc -l /name/files -w # 统计单词数 可以配合 ls | wc -w 查看文件数 - l # 统计文件的信息 用来获取行数等 cat /name/files.txt 查看文件的内容 # 适合使用小文本 - n # 显示文件内容及对应行号 mkdir(make directory) /name # 创建目录 - p # 可以一次性创建多层目录 touch /name/files # 在name文件夹下创建files文件 或 更新文件的时间戳 # 可以同时创建多条 cp(copy) # 复制 cp/name/files /目标文件夹 # 赋值files文件到目标文件夹 # 备份 cp/name/files /name/files.bak(后缀随便加) 原地备份 - r # 递归复制目录及其目录下的内容 - p # 复制的时候保持属性不变 - a # 复制所有 类似 -p,d,r mv(move) # 移动 mv /name/ /目标/ 将name文件夹移动到目标文件夹 # 可以进行改名操作 mv old_name new_name rm(remove) # 删除 rm/files.txt -> y/n 删除files文件 -> 删除/取消 - f # 删除文件不提示 - r # 递归删除目录及其目录下的内容 - rf # 递归删除目录及其目录下的内容不提示 head # head files.txt 取出文件的前几行 默认为十行 - n(num) # 取出前num行 tail # tail files.txt 取出文件的后几行 默认为十行 - n(num) # 取出后num行 - f # 显示文件实时更新的内容 也可以直接使用tailf ln # 创建硬链接 # 不能对目录创建硬链接但是可以创建软链接 - s # 创建软链接 ln -s /name/files 软链接name # 软链接存放着原文件的位置,原文件被删除软链接失效 # 添加快捷方式 例如 python ln -s /opt/python36/bin/python3.6 /usr/local/sbin/python3.6 # 指令目录 # 就不用单独在PATH目录去添加路径 # Ps:当源文件变化时,软链接和硬链接都会跟着变化 lsof # lsof找到系统所有的文件 # lsof |grep delete # (delete标记 这个文件硬链接数量为0,进程调用数不为0) 重启返回第一列软件名称 # 重启对应软件 软件的绝对路径 restart tar # 创建查看解压压缩包 tar中参数可以不加 '-' tar zcf 压缩包存放的位置 压缩的目标 # zcvf 创建压缩包 tar ztf/tf 压缩包的位置 # ztf 查看压缩包 tar zxf/xf 压缩包的名字 -C 指定的路径 # 需要先进入压缩包的位置 指定路径可以不写默认在同目录下解包 - z # 通过gzip压缩工具进行压缩 压缩.gz后缀 - c # 表示create 创建压缩包 - v # 显示压缩或解压的过程 - f # 表示file 接上压缩包的名字 # 要写到最后 - t # 表示list 显示压缩包的内容 - x # 解压 - C # 解压到指定目录 -- exclude = /name # 需要排除的name文件/文件夹等 unzip 文件name # 解压 .zip文件 yum install -y unzip zip gzip # 用来压缩较大文件(以60%-70%来节省空间) gzip * # 压缩当前目录所有文件为.gz文件 # 可以后跟name gzip -dv * # 把上列中每个压缩的文件解压,并列出详细信息 gzip -l * 显示压缩文件的信息,并不解压 tar -cf my.tar my_first.py gzip -r my.tar # 压缩一个tar备份文件,扩展名是tar.gz -d # 解开压缩文件 -f # 强行压缩文件 -h # 在线帮助 -l # 列出压缩文件的相关信息 -L # 显示版本与版权信息 -r # 递归处理,将制定目录下的所有文件及子目录一并处理 -v # 显示执行过程 -C # 指定目录 -z # 调用gzip的压缩解压格式 修改权限: chmod(change mode) # chmod num(以权限对应的数字给与权限 分为所有者权限(u),家人权限(g),陌生人权限(o)) 需要修改权限的文件 # chmod 需要修改权限者编码(u,g,o)+-=权限码(r,w,x,-) 需要修改权限的文件 修改所有者 chown(change owner) # chown 属主 文件等需要更改属主的内容 修改所有组 # chgrp 组名 文件等需要更改属组的内容 umask # 控制系统默认权限的命令 # 计算 对于目录 777 直接减去umask 对于文件 666 减去 umask 如果 umask某一位是奇数,减完之后奇数位需要加1 # umask num # 修改umask值 文件系统的属性(文件属性) lsattr # 查看属性 权限 lsattr 文件 e # 默认 a # 只能追加 i # 不可修改 chattr # 设置属性(加锁,属性则为钥匙) chattr +-属性 文件 进程管理 ps -ef # 查看linux当前进程 # 可以配合 | grep 等进行筛选 -a # 显示所有进程 -u # 用户以及其他详细信息 -x 显示没有控制终端的进程 状态补充: R 正在执行 S 阻塞 T 暂停 Z 不存在但暂时无法消除 D 不可中断的静止 < 高优先级的进程 N 低优先级的进程 L 有内存分页分配并锁在内存中 top # 查看当前进程,任务详情,以及系统负载等详细信息 renice # 调整任务优先级 -n num PID # NI值调节 kill 进程pid(在ps -ef中) # 杀死进程 -9 # 强制终止信号(危险命令,强制杀死进程,以及相关依赖) pkill 进程名称 # 支持名称杀死所有有关进程 网络相关 ifdown ethx # 关闭网卡 ifup ethx # 开启网卡 ifconfig [指定网卡] # 显示/查看网卡信息-ip地址 # 如果没有ifconfig 运行 yum install net-tools # ethx 网卡 # ifconfig 网卡name ip netmask 子网掩码 // 设置网卡name的ip以及子网掩码 系统维护(详情上文有) /etc/passwd 存放用户信息 /etc/group 存放组信息 /etc/adduser.conf 新增用户配置信息 /etc/skel 新用户公用的配置文件 /etc/interfaces # ip地址相关 /etc/hosts /etc/resolv.conf
Songzhibin