Shell脚本学习:常用命令与实例解析
需积分: 10 40 浏览量
更新于2024-07-25
收藏 101KB DOC 举报
"这篇文档是针对初学者的shell学习指南,包含了大量常用shell命令的解释和示例,有助于快速掌握shell脚本编写的基础知识。"
在Linux或Unix系统中,shell是用户与操作系统交互的界面,它允许用户通过命令行执行操作。以下是一些重要的shell命令及其用途:
1. `clear`:清空终端屏幕,使界面变得整洁。
2. `cd`:改变工作目录。`cd ..`将返回上一级目录,`cd $MYPATH`则会进入由环境变量$MYPATH指定的目录。
3. `ls -l`:列出当前目录中的文件和目录,包括详细信息,如权限、大小和日期。
4. `ls -al`:列出所有文件,包括隐藏文件(以`.`开头的文件)。
5. `whoami`:显示当前登录的用户名。
6. `cd mydir`:进入名为`mydir`的目录。
7. `cd my*`:如果只有一个以`my`开头的目录,将进入该目录(通配符`*`用于匹配多个字符)。
8. `tar cvf ddd.tar abc.* defghi`:创建一个名为`ddd.tar`的归档文件,包含`abc.*`和`defghi`文件或目录。
9. `tar xvf ddd.tar`:解压缩`ddd.tar`文件。
10. `rm -rf mydir`:删除`mydir`目录,不进行确认提示,小心使用,因为这将永久删除目录及其内容。
11. `grep abc *.pc`:在所有`.pc`文件中查找包含`abc`的行。
12. `grep -c abc *.txt`:统计所有`.txt`文件中包含`abc`的行数。
13. `grep -i abc *.txt`:大小写不敏感地查找所有`.txt`文件中包含`abc`的行。
14. `set | grep TL_ABC`:在环境变量中搜索包含`TL_ABC`的条目。
15. `diff abc.txt /usera/def.txt`:比较两个文件`abc.txt`和`/usera/def.txt`的差异。
16. `find . -name "abc*"`:在当前目录及其子目录中查找以`abc`开头的文件。
17. `cp -p abc.txt /mydir/abc_d.txt`:复制`abc.txt`到`/mydir`目录下,并保留原有属性。
18. `ps -ef | grep UserA`:列出属于`UserA`的所有进程。
19. `shellABC.sh > abc.log`:将`shellABC.sh`脚本的输出重定向到`abc.log`文件,覆盖原有内容。
20. `shellABC.sh >> abc.log`:追加`shellABC.sh`脚本的输出到`abc.log`文件。
21. `exit`:退出当前shell会话。
22. `su - userABC`:切换到`userABC`用户身份。
23. `last`:显示最近的登录记录。
24. `Esc + K`:重复上一次输入的命令,多次`k`可向上浏览历史命令。
25. `Esc + i` 和 `Esc + x`:编辑命令行,`i`用于插入模式,`x`用于删除。
26. `ipcs -oq | grep 5000`:查看消息队列,过滤出与5000相关的条目。
27. `make`:根据当前目录下的`Makefile`自动编译源代码。
28. `man sighold` 和 `man socket`:查看函数`sighold`和`socket`的定义。
29. `cat abc.txt`:显示`abc.txt`文件的全部内容。
30. `more abc.txt`:分页查看`abc.txt`文件内容。
31. `vi abc.txt`:使用`vi`编辑器编辑`abc.txt`文件。
32. `netstat -i`:显示网络接口的状态。
33. `netstat -r`:查看路由表信息。
34. `alias pss='ps -ef | grep abc'`:创建别名`pss`,方便快速执行`ps -ef | grep abc`命令。
35. `PS1='$PWD>'`; export PS1:设置命令提示符显示当前目录。
36. `set -o vi`:启用vi编辑模式,使得在命令行可以使用vi的快捷键。
37. `cp /dev/null abc.log`:清空`abc.log`文件内容。
38. `source ~/.profile`:更新`~/.profile`文件,无需重新登录即可生效。
39. `set | grep ABC` 或 `env`:查看包含`ABC`的环境变量。
40. `who | wc -l`:统计当前在线用户数量。
41. `pwd`:显示当前工作目录。
42. `ipcs -oq`:查看消息队列的状态。
43. `tail -f abc`:持续监控`abc`文件的尾部,当文件有新内容时实时显示。
这些命令是shell脚本编程和日常系统管理的基础,熟练掌握它们能极大地提高工作效率。通过实践和练习,你可以更深入地理解这些命令,并利用它们来解决各种问题。
2019-07-23 上传
2019-01-17 上传
2016-07-26 上传
2012-12-11 上传
2012-04-30 上传
2019-04-18 上传
2012-08-05 上传
jeam1jj
- 粉丝: 0
- 资源: 3
最新资源
- 平尾装配工作平台运输支撑系统设计与应用
- MAX-MIN Ant System:用MATLAB解决旅行商问题
- Flutter状态管理新秀:sealed_flutter_bloc包整合seal_unions
- Pong²开源游戏:双人对战图形化的经典竞技体验
- jQuery spriteAnimator插件:创建精灵动画的利器
- 广播媒体对象传输方法与设备的技术分析
- MATLAB HDF5数据提取工具:深层结构化数据处理
- 适用于arm64的Valgrind交叉编译包发布
- 基于canvas和Java后端的小程序“飞翔的小鸟”完整示例
- 全面升级STM32F7 Discovery LCD BSP驱动程序
- React Router v4 入门教程与示例代码解析
- 下载OpenCV各版本安装包,全面覆盖2.4至4.5
- 手写笔画分割技术的新突破:智能分割方法与装置
- 基于Koplowitz & Bruckstein算法的MATLAB周长估计方法
- Modbus4j-3.0.3版本免费下载指南
- PoqetPresenter:Sharp Zaurus上的开源OpenOffice演示查看器