Linux命令精华:30个超级实用的Shell技巧

4星 · 超过85%的资源 需积分: 10 23 下载量 183 浏览量 更新于2024-09-19 1 收藏 693KB PDF 举报
"最牛逼的Linux命令" 这篇文章主要介绍了Linux Shell命令的精华部分,源自Catonmat的系列文章"Top Ten One-Liners from CommandLine Fu Explained"。它旨在帮助Linux用户提升对命令行界面(CLI)的掌握,提供了一些强大而实用的命令示例。以下是对这些命令的详细解释: 1. 使用`sudo !!`运行上一个命令:当你执行了一个需要管理员权限的命令后忘记使用`sudo`时,这个技巧非常有用。只需输入`sudo !!`,系统会重复上一条命令但加上`sudo`,这样无需重新键入整个命令。 2. 查找重复文件:`fdupes -r /path/to/search`,这个命令可以查找指定目录及其子目录中的重复文件,对于清理磁盘空间或整理文件很有帮助。 3. 使用`history | grep command`搜索历史命令:这可以帮助你快速找到以前执行过的某个命令,特别是当你忘记具体命令但记得部分关键字时。 4. `find . -name 'foo*' -print0 | xargs -0 rm -f` 删除以"foo"开头的文件:这个组合命令能安全地删除当前目录及其子目录下所有名字以"foo"开头的文件,`-print0`和`-0`参数用于处理包含空格的文件名。 5. 使用`sed`替换文本:例如`sed 's/old/new/g' file.txt`会将`file.txt`中的所有"old"替换为"new"。 6. `tar -czvf archive.tar.gz directory/`创建归档文件:这将创建一个名为`archive.tar.gz`的gzip压缩的tar归档,包含`directory/`及其所有内容。 7. `diff -u file1 file2`比较两个文件差异:这个命令显示`file1`和`file2`之间的差异,`-u`参数以统一格式输出。 8. `sort file | uniq -c`统计文件中唯一行的出现次数:这个组合命令可以帮你找出文件中每行出现的次数,`uniq -c`会显示计数。 9. `lsof -i :port`查看占用特定端口的进程:这能帮助你找出哪个程序正在使用指定的网络端口。 10. `top`或`htop`监控系统资源:这两个命令可以实时显示系统的CPU、内存使用情况以及各个进程的状态,`htop`提供了更友好的界面。 以上只是一部分例子,原文还涵盖了更多的高级技巧和命令,包括文件操作、系统管理、网络诊断等方面。熟练掌握这些命令,不仅能提高工作效率,还能深入理解Linux系统的运作机制。记住,Linux Shell的强大在于其灵活性和可扩展性,通过管道、重定向、脚本等工具,你可以组合出无穷无尽的解决方案。