Linux Shell命令备忘:which, ln, tee, locate 实用技巧
131 浏览量
更新于2024-08-31
收藏 100KB PDF 举报
"Linux Shell命令备忘录"
在Linux操作系统中,Shell命令是日常工作中不可或缺的工具,它们提供了高效且灵活的方式来管理和操作文件、目录以及系统。以下是一些开发者常用的Linux Shell命令及其详细解释:
1. **which**
`which`命令用于查找并显示指定命令的完整路径。它会搜索`$PATH`环境变量中列出的所有目录,找出指定命令的可执行文件位置。例如,`which ls`会显示`/bin/ls`,这是`ls`命令的存放位置。
2. **ln**
`ln`命令用于创建链接,链接分为硬链接和软链接(符号链接)。硬链接相当于文件的多个入口,更改其中一个并不会影响另一个。而软链接(类似于Windows的快捷方式)指向目标文件的路径,更改源文件会影响链接文件。例如,`ln -s test.txt ../test1.txt`会在上一级目录创建一个名为`test1.txt`的软链接,指向当前目录的`test.txt`。
3. **tee**
`tee`命令能够接收标准输入,并将其同时输出到屏幕和指定文件中。这对于保存命令输出或分叉输出到多个目的地非常有用。例如,`echo "hello" | tee file.txt`会将"hello"打印到屏幕上并写入`file.txt`。
4. **locate**
`locate`是一个快速查找文件的命令,它依赖于系统维护的数据库。相比`find`命令,`locate`的速度更快,因为它不实际遍历文件系统。要查找名为`libpng.so`的文件,可以运行`locate libpng.so`,系统会返回包含该文件名的所有路径。
5. **find**
`find`命令提供更复杂的文件查找功能,可以根据名称、时间、大小等条件查找。例如,`find / -name "libpng.so"`会从根目录开始查找所有名为`libpng.so`的文件。
6. **cat**
`cat`用于合并和查看文件内容。例如,`cat file.txt`会显示`file.txt`的内容。
7. **tar**
`tar`用于打包和压缩文件或目录。`tar -czvf archive.tar.gz directory/`将`directory/`打包成`archive.tar.gz`,其中`c`表示创建,`z`表示gzip压缩,`v`表示详细模式,`f`表示指定文件名。
8. **vim**
`vim`是一个强大的文本编辑器,支持命令模式和插入模式。在命令模式下,可以使用`/`进行搜索,如`/pattern`向下查找`pattern`,`?pattern`向上查找。
9. **mkdir**
创建新目录,例如`mkdir new_directory`会在当前目录下创建名为`new_directory`的新目录。
10. **rm**
删除文件或目录,如`rm file.txt`删除文件,`rm -r directory`删除目录(需谨慎操作)。
这些只是Linux Shell命令中的一小部分,熟练掌握它们能显著提升在Linux环境下的工作效率。记住这些命令并结合实际工作需要不断实践,才能更好地利用Linux的强大功能。
2021-07-21 上传
2021-09-29 上传
2742 浏览量
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
weixin_38710578
- 粉丝: 4
- 资源: 932
最新资源
- 基于Python和Opencv的车牌识别系统实现
- 我的代码小部件库:统计、MySQL操作与树结构功能
- React初学者入门指南:快速构建并部署你的第一个应用
- Oddish:夜潜CSGO皮肤,智能爬虫技术解析
- 利用REST HaProxy实现haproxy.cfg配置的HTTP接口化
- LeetCode用例构造实践:CMake和GoogleTest的应用
- 快速搭建vulhub靶场:简化docker-compose与vulhub-master下载
- 天秤座术语表:glossariolibras项目安装与使用指南
- 从Vercel到Firebase的全栈Amazon克隆项目指南
- ANU PK大楼Studio 1的3D声效和Ambisonic技术体验
- C#实现的鼠标事件功能演示
- 掌握DP-10:LeetCode超级掉蛋与爆破气球
- C与SDL开发的游戏如何编译至WebAssembly平台
- CastorDOC开源应用程序:文档管理功能与Alfresco集成
- LeetCode用例构造与计算机科学基础:数据结构与设计模式
- 通过travis-nightly-builder实现自动化API与Rake任务构建