Shell与SQL脚本参数传递技巧详解
5星 · 超过95%的资源 需积分: 50 31 浏览量
更新于2024-10-22
收藏 25KB DOC 举报
"这篇文章主要介绍了如何向shell或SQL脚本传递参数以及如何在脚本中接收这些参数。它包括了shell脚本和SQL脚本中处理参数的不同方法,以及一些常用的shell内部变量的介绍。"
在shell脚本中,向脚本传递参数是通过在命令行上直接附加参数实现的。例如,`sha.sh aa bb > a.log` 这个命令中,`aa`和`bb`就是传递给`sha.sh`脚本的参数,分别对应于shell脚本中的`$1`和`$2`。在脚本中,可以使用`echo "@a.sql$1"|sqlplus $1/$2`这样的方式将参数传递给SQL脚本,这里的`$1`和`$2`同样代表来自shell脚本的参数。
在SQL脚本中,参数的接收通常使用`DEFINE`关键字来定义变量,如`DEFINE v_str=&1`,这里`&1`表示从shell传递过来的参数。然后在SQL语句中使用这个变量,如`p_insert_log('test', '&v_str');`。注意,SQL脚本执行块需要以`/`结尾,如果只是单独的SQL语句,则不需要。
shell脚本中还有一些内部参数,它们提供了关于脚本执行状态和参数数量的信息:
- `$#`:表示传递给脚本的参数总数。
- `$?`:上一个命令或脚本的退出状态,成功为0,失败为非0值。
- `$*`:所有参数组成的单个字符串,每个参数之间由空格分隔。
- `$n`(如 `$1`, `$2`等):表示第n个参数。
- `$0`:当前执行的脚本的名字。
- `$@`:所有参数列表,每个参数被双引号包围,保持它们各自的独立性。
- `$$$`:当前脚本的进程ID(PID)。
- `$!`:上一个后台命令的PID。
了解这些参数和变量对于编写和调试shell及SQL脚本至关重要,它们使得脚本能够灵活地处理用户输入,实现更复杂的任务。通过熟练掌握这些技巧,你可以创建更高效、更具交互性的自动化脚本。
2021-01-08 上传
2018-04-10 上传
2023-03-16 上传
2023-09-28 上传
2023-04-30 上传
2023-07-20 上传
2023-11-15 上传
2023-04-30 上传
shan7719515
- 粉丝: 4
- 资源: 10
最新资源
- Aspose资源包:转PDF无水印学习工具
- Go语言控制台输入输出操作教程
- 红外遥控报警器原理及应用详解下载
- 控制卷筒纸侧面位置的先进装置技术解析
- 易语言加解密例程源码详解与实践
- SpringMVC客户管理系统:Hibernate与Bootstrap集成实践
- 深入理解JavaScript Set与WeakSet的使用
- 深入解析接收存储及发送装置的广播技术方法
- zyString模块1.0源码公开-易语言编程利器
- Android记分板UI设计:SimpleScoreboard的简洁与高效
- 量子网格列设置存储组件:开源解决方案
- 全面技术源码合集:CcVita Php Check v1.1
- 中军创易语言抢购软件:付款功能解析
- Python手动实现图像滤波教程
- MATLAB源代码实现基于DFT的量子传输分析
- 开源程序Hukoch.exe:简化食谱管理与导入功能