Linux Shell编程:探索Bash特性与脚本设计
需积分: 10 169 浏览量
更新于2024-08-25
收藏 327KB PPT 举报
"位置参数是shell编程中的一个重要概念,允许用户通过命令行传递参数给脚本或命令。通过set命令,我们可以为这些位置参数赋值。在示例中,`ls -l` 的输出被赋值给了位置参数,接着使用echo打印了第一个($1)和第二个($2)参数的值。这个教程主要讲解了Linux shell程序设计,包括shell的特点、类型、变量、控制语句、算术运算、函数以及内置命令等内容,特别关注bash shell,强调其作为高级编程语言的特性,如命令历史、命令补全、别名、重定向和管道等。此外,还介绍了如何创建和执行shell脚本,包括如何处理命令行参数。"
在shell编程中,位置参数是通过命令行传递给脚本或命令的值,它们默认按照传入的顺序依次存储在特殊变量$1, $2, $3等中。$0通常代表脚本本身的名称。`set`命令用于改变shell的选项或设置位置参数。在描述中的例子中,`set `ls -l``将`ls -l`的输出作为位置参数赋值,这样$1和$2就分别包含了输出的第一列和第二列数据。
bash是目前最常用的Linux shell,它具有很多特性,如命令行历史(可以使用上箭头调出之前输入的命令)、命令补全(自动完成文件名或命令)、内置命令(如echo、exit、pwd、kill)以及输入/输出重定向和管道功能,使得用户能方便地组合命令和处理数据流。例如,`date`命令显示当前日期,`pwd`显示工作目录,`cd..`则切换到上一级目录。
编写shell脚本时,可以使用注释(以#开头的行)来解释代码。如果测试条件`test $# = 0`成立(表示没有命令行参数),则执行`ls .`列出当前目录的内容;反之,如果存在参数,`for`循环会遍历所有位置参数,并对每个参数运行`ls -l`,然后通过`grep '^d'`过滤出以'd'开头(表示目录)的行。这展示了如何在脚本中使用控制结构(如if和for)以及处理命令行参数。
创建shell脚本可以使用任意文本编辑器,保存文件时需要确保文件扩展名为.sh。执行脚本有多种方式:通过bash解释器指定脚本(如`bash scriptname.sh`)、赋予脚本执行权限后直接运行(`./scriptname.sh`)或使用`source`命令在当前shell环境中执行(`source scriptname.sh`)。在执行脚本前,可能需要通过`chmod +x scriptname.sh`命令给予脚本执行权限。
2018-04-23 上传
153 浏览量
2018-06-07 上传
2021-04-02 上传
2009-01-09 上传
2017-09-15 上传
2021-07-14 上传
881 浏览量
2021-02-24 上传
永不放弃yes
- 粉丝: 913
- 资源: 2万+
最新资源
- MeuPrimeiroPacoteR:包装的用途(一行,标题大小写)
- command-asker.js:通过命令行与用户交互的简单方法
- DeathrunMod:AMXX插件
- ElsoKozosMunka
- tyten-game:TYTEN-TAGD Game Jam 2020年Spring
- 基于DS18B20多点测温源码-电路方案
- 戈格克隆
- calibre-web-test:口径网测试
- PEiD_1.1_2022_04_10.7z
- Arduino LEG-项目开发
- SpringCloud-Demo:springcloud演示
- 如果学生的学习时间为9.25小时,则在有监督的机器学习模型上的预测分数
- api-generator:Docpad 源解析器。 生成用于构建文档的 JSON 文件
- TaskScheduler:使用函子,lambda和std
- benthomas325
- Coding-Ninjas-java