linux常用命令总结
1、文本类
cat
cat -n textfile1 > textfile2 # 把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里 cat -b textfile1 textfile2 >> textfile3 # 把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里 cat /dev/null > /etc/test.txt # 清空 /etc/test.txt 文档内容
vi/vim
删除 |
x,X |
在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X 为向前删除一个字符(相当于 [backspace] 亦即是退格键) |
nx | n 为数字,连续向后删除 n 个字符 | |
剪切 | dd | 剪切游标所在的那一整行 |
ndd | n 为数字。剪切光标所在的向下 n 行 | |
复制 | yy | 复制游标所在的那一行 |
nyy | n 为数字。复制光标所在的向下 n 行 | |
粘贴 | p,P | p 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行 |
u | 复原前一个动作 | |
重做 | ctrl+r | 重做上一个动作 |
. | 重做上一个动作 |
注释/删除注释
1.多行注释:
1. 首先按esc进入命令行模式下,按下Ctrl + v,进入列(也叫区块)模式;
2. 在行首使用上下键选择需要注释的多行;
3. 按下键盘(大写)“I”键,进入插入模式;
4. 然后输入注释符(“//”、“#”等);
5. 最后按下“Esc”键。
注:在按下esc键后,会稍等一会才会出现注释,不要着急~~时间很短的
2.删除多行注释:
1. 首先按esc进入命令行模式下,按下Ctrl + v, 进入列模式;
2. 选定要取消注释的多行;
3. 按下“x”或者“d”.
注意:如果是“//”注释,那需要执行两次该操作,如果是“#”注释,一次即可
grep
grep hello file.txt # 在文件 file.txt 中查找字符串 "hello",并打印匹配的行 grep -r -n pattern dir # 在文件夹 dir 中递归查找所有文件中匹配正则表达式 "pattern" 的行,并打印匹配行所在的文件名和行号 grep test *file # 在当前目录中,查找后缀有 file 字样的文件中包含 test 字符串的文件,并打印出该字符串的行 grep -r update /etc/acpi # 以递归的方式查找符合条件的文件。例如,查找指定目录/etc/acpi 及其子目录(如果存在子目录的话)下所有文件中包含字符串"update"的文件,并打印出该字符串所在行的内容 grep -v test *test* # 查找文件名中包含 test 的文件中不包含test 的行
2、cpu/mem/磁盘/描述符等硬件
top # 显示进程信息 top -c # 显示完整命令 top -b # 以批处理模式显示程序信息 top -n 2 # 设置信息更新次数 top -p 139 # 显示进程号为139的进程信息,CPU、内存占用率等
cat /proc/cpuinfo # 查看cpu基本信息
cat /proc/meminfo # 查看内存信息
free -h # 查看内存状态
vmstat # 查看虚拟内存使用情况
netstat
netstat -a # 显示详细的网络状况 netstat -nu # 显示当前UDP连接状况 netstat -i # 显示网卡列表 netstat -g # 显示组播组的关系 netstat -s # 显示网络统计信息 netstat -l # 显示监听的套接口
netstat -tunlp | grep 8000 # 查看端口号占用
lsof
lsof -i:8000 # 查看端口号占用
du
du # 显示目录或者文件所占空间 du log2012.log # 显示指定文件所占空间 du -h test # 方便阅读的格式显示test目录所占空间情况
df
df # 显示文件系统的磁盘使用情况统计 df --total # 显示所有的信息 df -h # 通过它可以产生可读的格式df命令的输出
lsblk
lsblk # 列出所有块设备
3、查看http并发连接数
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' netstat -nat|grep ESTABLISHED|wc -l