Linux日常操作与优化技巧

需积分: 10 2 下载量 4 浏览量 更新于2024-09-13 收藏 2KB TXT 举报
"这篇文章主要介绍了Linux系统中的一些实用小技巧,包括查看进程、搜索文件、获取IP地址、统计行频、杀死进程、显示文件大小、清理缓存、重命名文件、处理换行符问题以及查看和操作ARP表。" 1. **查看进程按CPU使用率排序** 使用`ps -eo "%C:%p:%z:%a"`命令可以列出所有进程的CPU使用率、进程ID、内存占用和状态,然后通过`sort -k5 -nr`进行排序,以CPU使用率降序显示。 2. **根据父进程ID查找子进程** `ps -Ao pid,ppid,args`可以列出进程ID及其父进程ID和命令行参数,结合`grep`和`awk`可以方便地找到特定父进程的所有子进程。 3. **获取当前网络接口的IP地址** 使用`ifconfig eth0`显示以太网接口eth0的信息,然后通过`grep "inetaddr:"`过滤出IP地址行,再用`awk`和`cut`提取出IP地址。 4. **统计文件每一列的出现次数** 对于有分隔符的文件,`awk`可以用来统计每列数据出现的频率。例如,`awk '{arr[$1]+=1} END{for (i in arr) print arr[i] "\t" i}' 文件名`将统计第一列的出现次数并按次数降序排列。 5. **显示最近执行过的10个命令** 查看`.bash_history`文件,使用`sed`替换竖线为换行符,`cut`提取第一个字段(命令),然后通过`sort | uniq -c | sort -nr`进行计数和排序,最后`head`取出前10条。 6. **优雅地停止Nginx服务** 首先,`ps -ef | grep -v grep | grep nginx`找出所有Nginx进程的PID,然后使用`for`循环遍历并调用`kill`命令逐一停止它们。 7. **按大小显示当前目录下所有文件和子目录** `du -b --max-depth=1`计算每个文件和子目录的大小,`sort -nr`按大小排序,接着用`perl`处理大小单位,使其更易读。`du -sh *`可以快速查看当前目录下所有文件和目录的总大小。 8. **重命名文件,将所有小写字母转为大写** 使用`for`循环遍历当前目录下的所有文件,通过`echo $i|tr A-Za-z`将文件名中的小写字母转换为大写,然后用`mv`命令重命名。 9. **清空Linux系统的缓冲区和缓存** 执行`sync`同步数据到磁盘,然后使用`echo 3 > /proc/sys/vm/drop_caches`清空页缓存、块I/O缓存和直接映射缓存。 10. **处理文件中的^M换行符** - 使用`dos2unix filename`命令将DOS格式的文件转换为Unix格式。 - `sed -e 's/^M//' filename`删除文件中所有的^M字符。 - 在Vim中,`:s/^M//gc`会删除当前行的^M字符,`^M`需要在命令模式下按下Ctrl+V再按Ctrl+M输入。 - `col -bx <dosfile> newfile`将DOS格式的文件转换为Unix格式。 - `tr -s "\r\n" "\n" <file> newfile`将文件中的回车换行符(CR-LF)替换为Unix的换行符(LF)。 11. **显示并删除ARP表中的条目** `arp -n`列出ARP缓存表,`awk '/^[1-9]/{print "arp -d "$1}'|sh`则会删除匹配到的条目。 12. **查看ARP表中的IP和MAC地址** 通过`cat /proc/net/arp`查看Linux内核的ARP表,`awk '{print $1""$4}'`打印IP和MAC地址,`sort -t . -n +3-4`按照IP地址的第三部分和第四部分升序排序,结果保存到文件中。 这些技巧涵盖了Linux系统日常管理、文件操作、网络通信和性能优化等多个方面,是提高Linux操作效率的重要工具。