"Linux环境下SHELL脚本的环境变量及简介"
需积分: 10 191 浏览量
更新于2023-12-17
收藏 2.22MB PPT 举报
&T贝尔实验室开发的。它是一个相对简洁的shell,只提供了基本的功能。Bourne shell的默认提示符是"$"。
Korn shell(ksh)• 由AT&T贝尔实验室的David Korn于1983年开发的,是对Bourne shell的扩展和改进。Korn shell提供了更多的功能和特性,如命令历史记录、输入和输出重定向等。Korn shell的默认提示符是"$"。
Bash shell• Bash(Bourne Again Shell)是GNU项目的一部分,是对Bourne shell的增强和扩展。Bash shell继承了Bourne shell和Korn shell的特性,并添加了许多新功能。Bash shell是大多数Linux系统的默认shell。Bash shell的默认提示符是"$"。
C shell(csh)• C shell是由Bill Joy开发的,最初是在BSD UNIX系统中推出的。C shell提供了一些更高级的特性,如命令补全和命令别名等。C shell的默认提示符是"%”。
Tcsh• Tcsh(或Tenex C shell)是C shell的增强版本,添加了许多新特性,如历史命令编辑和补全等。Tcsh是在BSD UNIX系统中推出的,并且成为了其默认shell。
环境变量• 环境变量是操作系统中用来存储配置信息的一种机制。环境变量可以在shell脚本中使用,也可以在用户的登录会话中使用。环境变量可以包含文本字符串、路径、命令等。
常用的环境变量• PATH环境变量:路径变量指定了shell在执行命令时搜索可执行文件的路径。当输入一个命令时,shell会按照PATH环境变量中指定的路径顺序依次查找可执行文件。
• HOME环境变量:指定了用户的家目录路径,即用户登录后默认的工作目录。
• USER环境变量:指定了当前登录用户的用户名。
• SHELL环境变量:指定了当前用户所使用的shell的路径。
• LANG环境变量:指定了当前用户所使用的语言环境。
• TMPDIR环境变量:指定了临时文件的存放目录路径。
• MAIL环境变量:指定了当前用户的邮件文件的路径。
• PS1与PS2环境变量:PS1用于指定shell的提示符,PS2用于指定shell的续行提示符。
• LINENO环境变量:指定了shell脚本中当前执行的代码行数。
• BASH_VERSION环境变量:指定了当前使用的Bash shell的版本。
• GROUPS环境变量:指定了当前用户所属的组。
• HOSTNAME环境变量:指定了当前主机的主机名。
SHELL脚本的使用• Shell脚本是由一系列的shell命令组成的脚本文件,可以简化重复的任务,提高工作效率。Shell脚本可以使用各种条件语句、循环语句和函数来实现更复杂的逻辑。
• Shell脚本可以通过chmod命令添加执行权限,并使用./来执行脚本文件。
• Shell脚本可以使用环境变量来存储和传递数据,可以使用命令替换来获取命令的输出。
• Shell脚本可以使用输入和输出重定向来处理输入和输出。
• Shell脚本可以使用条件语句来进行逻辑判断,如if、case等。
• Shell脚本可以使用循环语句来进行循环处理,如for、while等。
• Shell脚本可以定义和调用函数来实现代码的重用。
总结• 环境变量是操作系统中用来存储配置信息的一种机制,在Linux环境下,可以通过shell脚本来对环境变量进行操作和修改。
• Linux提供了多种不同的shell,如Bourne shell、Korn shell、Bash shell等,每种shell都有自己的特点和功能。
• 在shell脚本中,可以使用环境变量来存储和传递数据,可以使用各种条件语句和循环语句来进行逻辑控制,还可以使用函数来实现代码的重用。
• 使用shell脚本可以简化重复的任务,提高工作效率,是Linux系统管理和维护中常用的工具之一。
2019-03-24 上传
点击了解资源详情
2021-10-07 上传
2021-09-28 上传
2021-10-01 上传
2017-10-15 上传
小炸毛周黑鸭
- 粉丝: 24
- 资源: 2万+
最新资源
- 平尾装配工作平台运输支撑系统设计与应用
- 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演示查看器