Linux基础教程:探索Shell位置变量与命令

需积分: 50 1 下载量 177 浏览量 更新于2024-08-25 收藏 7.92MB PPT 举报
"这篇资料是关于Linux学习的基础内容,特别是关注于位置变量在Shell脚本中的使用。位置变量是Linux Shell编程中非常重要的概念,它们帮助我们处理命令行输入的参数。$0代表脚本本身的文件名,而$1到$9分别存储第一个到第九个命令行参数。$#表示参数的总数,$@和$*则都表示所有参数,但使用时有所不同:$@在双引号中会保留每个参数的独立性,而$*会将所有参数视为一个字符串。$?用于获取上一个命令的退出状态,0通常表示成功,非0表示错误。$$则返回当前进程的ID。资料还涵盖了Linux的基本概念,包括其起源、发展、GNU项目以及GPL许可证的重要性,以及Linux在个人桌面系统和系统服务器上的广泛应用。" 在Linux中,位置变量是Shell脚本编程的关键元素。$0保存了执行脚本的完整路径和文件名,这对于识别哪个脚本正在运行非常有用。$1到$9则分别对应脚本接收到的第一至第九个参数,这些参数可以在脚本内部被引用和处理。当参数数量超过9个时,可以使用数组来存储剩余的参数。$#是一个特殊变量,它给出命令行参数的总数,这对于循环处理参数或者根据参数数量执行不同操作非常实用。 $@和$*都是用来表示所有命令行参数,但它们的行为有所区别。$@在双引号中会保持每个参数的独立性,这意味着每个参数会被视为单独的字符串。而$*会将所有参数合并成一个单个字符串,所有的参数被视为一个整体。因此,如果需要保留参数间的空格,应当使用$@。 $?变量则提供了上一个命令的退出状态,它是判断命令执行是否成功的重要依据。0通常表示命令成功执行,任何非0值都意味着发生了错误。这对于编写脚本时进行错误检查和流程控制至关重要。 最后,$$变量返回当前进程的ID,这个ID是唯一的,对于跟踪和管理后台进程很有用。 此外,资料还介绍了Linux的历史,包括其从Unix演化而来,以及Linux之父Linus Torvalds如何在1991年启动了这个项目。Linux与GNU项目紧密相连,GNU的很多工具,如GCC编译器、Make构建工具和Glibc库,都是Linux生态系统的重要组成部分。同时,GPL许可证(General Public License)确保了Linux源代码的自由分发和修改,促进了其广泛的发展和应用。Linux不仅被用于个人桌面,如日常办公、多媒体娱乐,还广泛应用于服务器环境,如网络服务、数据库和打印服务器等。