linux常用命令总结(含选项参数)
• 用户切换
su 切换到root用户并不切换环境
su - root 切换到root用户并切换环境
su redhat 切换到redhat不切换环境
• cd切换目录
cd
~ USERNAME 直接切换到指定用户的家目录
- 在上一个目录和当前目录来回切换
. 切换到当前目录
.. 切换上一级目录
uname 显示系统信息
-a 显示以下选项的全部信息
-s 内核名称
-n 主机名称
-r 内核发行版号
-v 操作系统版本
-m 机器硬件名称
-p 处理器名称
-i 硬件平台名称
-o 操作系统名称
ps (Process Status)显示进程状态
ps 不加选项,显示当前用户在当前终端下的进程信息
a 显示各终端下全部进程
u 显示进程所属用户名
x 对于没有关联到终端上的进程也显示
-e 显示当前终端下的全部进程
-F 显示详尽的进程信息
-o 自定义列信息(ps -eo pid,user,start)
-u 指定用户查看进程
-C 按命令吗查找进程
-L 查看特定PID进程的线程信息
top 性能监控:CPU负载,内存,SWAP,进程
(输入top进入自动更新的性能监控页面)
快捷键:
P 基于%CPU全局排序(默认降序)
M 基于%MEM排序,%MEM=(常驻内存/总内存)*100%
F/O 进入列选择,可以指定排序项
b 会将当前运行的进程高亮显示
d 设置top刷新间隔秒数,默认为3s
m 显示内存和交换分区的信息
l 显示系统负载信息
t 显示CPU、进程的统计信息
• rpm 软件包管理(安装,卸载,更新,管理)
• rpm命令
-e 卸载rpm包
-q 查询已安装的软件信息
-i 安装rpm包
-u 升级rpm包
--replacepkgs 重新安装rpm包
--justdb 升级数据库,不修改文件系统
--percent 在软件包安装时输出百分比
--help 帮助
--version 显示版本信息
-c 显示所有配置文件
-d 显示所有文档文件
-h 显示安装进度
-l 列出软件包中的文件
-a 显示出文件状态
-p 查询/校验一个软件包文件
-v 显示详细的处理信息
• rpm常用参数
-vh:显示安装进度;
-U:升级软件包;
-qpl:列出RPM软件包内的文件信息;
-qpi:列出RPM软件包的描述信息;
-qf:查找指定文件属于哪个RPM软件包;
-Va:校验所有的RPM软件包,查找丢失的文件;
-qa: 查找相应文件,如 rpm -qa mysql
tar命令:(只归档,不压缩)
-c:创建归档文件
-C: 解压时,指定展开目录
-f:FILENAME.tar: 操作的归档文件
-x: 还原归档文件
--xattrs: 在归档时,保存文件扩展属性信息
-t:不展开归档,查看归档文件内文件列表
-zcf:调用gzip归档并压缩
-zxf:调用gzip解压缩并还原归档
-jcf: 调用bzip2归档并压缩
-jxf: 调用bzip2解压缩并还原归档
-Jcf:调用xz归档并压缩
-Jxf:调用xz解压缩并还原归档
• mount 查看挂载信息
• 列表
ls 列出,查看指定目录下的文件
ll 相当于 ls -l
-h 做单位转换
-a 显示所有隐藏文件,包括.和..
-A 显示所有隐藏文件,不包括.和..
-d 显示目录本身的属性
ping 测试网络连通性
-c 指定ping的次数
-q 只看结果,不看过程
-s 指定字节的数据包去PING
-i 指定时间间隔发送PING包
-f 疯狂PING,一秒最少100个PING包
hash 命令哈希
which 查看命令路径
-p /bin/ls haha 添加哈希表
-t ls 查看指定命令的哈希表
-d ls 删除指定命令的哈希表
-r 清空所有的hash表
• alias 添加指定命令别名 临时指定
alias 目标命令名称='需要执行的命令串本身'
unalias 删除指定的命令别名
• Date 输出和更改日期时间
格式:月日时分年.秒
Clock 查看时间
Hwclock 查看硬件时间
• cal 查看日历,如果只有一个参数则表示年份,如果有两个则表示月份,年份 1752
cal [参数][月份][年份]
-1 显示一个月的月历
-3 显示系统前一个月,当 b前月,下一个月的月历
-s 显示星期天为一个星期的第一天,默认的格式
-m 显示星期一为一个星期的第一天
-j 显示在当前年份中的第几天
-y 显示当前年份的日历
• stat 查看文件的详细信息
• cp 复制命令
复制文件
-r 复制目录
-p 复制的时候保留文件原有的属性,时间戳等信息
-a 归档复制,常用于备份
• mv 移动文件
-i 提示
-f 强制覆盖
-t 先写目标,后写源
改名 mv d c 把c改成d
• cat 连接并显示文件到标准输出
-n 显示行号
• tac 按照行逆序显示文件
• tail 查看文件后n 行,默认10
-n 指定行数
-f 查看文件后不退出,滚动显示后面内容
• cut 文件切割,passwd文件
-d 指定分隔符
-f 指定字段
-b 指定字节,无需分隔符
-c 指定字符,无需分隔符
-s 不打印没有分隔符的行
cut -d : -f 1,3 --outpt-delimiter=" " /etc/passwd
cut -d : -f 2,3 --output-delimiter=@ /etc/passwd
• 文本排序
• Sort 默认根据字符的AXCII码生序排序
-n 启用数值排序(正向)
-r reverse,逆序排序
-t 指定字段分隔符
-k key,指定字段进行排序
-u unique,去重
-f 排序时忽略字符大小写
• uniq 等同于sort -u,报告重复的行,注意,重复的行必须相邻
-d 只显示重复的行
-D 显示所有重复的行
-c 显示重复行重复的次数
• du -sh * 查看当前目录下文件的大小
• 目录管理
mkdir
-p parent 父目录
-v verbose 详细信息
mkdir /test/{1,2}/{3,4}
rmdir 只能删除空目录
• rm 删除文件,命令别名默认带-i,该选项用来提示用户进行交互。
-f force,强行删除,不提示
-r recursive,递归删除来删除目录
• 文本统计
wc (word count),显示顺序为 行-单词数-字节数
-w 单词
-c 字节 8位二进制数 byte
-l 行
-L 最长的一行有多少字符
• paste 合并两个文件
• diff 对比两个文件
• useradd
-u UID 指定UID
-g GID 指定基本组
-G GID1,GID2,... 指定附加组
-c “注释信息” 指定用户注释信息 chfn
-d /path/to/dir/ 指定某个目录为用户家目录
-s /shell 指定用户使用的shell chsh -s
wget 下载文件
-X 指定不希望下载的目录
-r 多级目录递归下载
-o 设置下载日志文件的位置,创建一个下载的日志文件
-O 追加在设置的文件中,不创建日志文件
-t 设置下载失败的重试次数,默认20次
-nc 避免相同文件被多次下载
-N 对比远程和本地文件的时间戳,下载新的
-c 断点续传
-w 设置weget每两个请求之间间隔的秒数
rsync 远程数据同步
-t 让修改时间也同步
-I 对挨个文件发起数据同步
-v 输出更多的信息
-r 让文件夹递归同步
-l 保持软连接文件类型,-L把软连接指向的实体文件同步
-p 保持权限
-a 归档选项,尽可能保持各方面的一致性
tcpdump 抓包
-i 指定网络接口
-nn 遇到协议号/端口号,直接显示数字而不是协议名
-X 显示协议头和包内容
-c 指定抓包的个数
-e 增加以太网帧头部信息输出
-l 输出变为“行缓冲”
-t 输出时不打印时间戳
-v 输出更详细的信息:tos值,ttl值,ID值
-F 指定过滤表达式所在的文件
-w 将流量保存到文件中
-r 读取raw packets文件
ln b b.txt 创建硬链接
ln -s c c.txt 创建软连接
touch a 创建文件a
nano a 编辑文件a
cat a 查看a
more a 查看a
pwd 查看当前目录