shell 中引用参数总结

1   在shell中定义变量之后引用这个变量要用  $ 符号,例如:

(一下例子是定义了一个变量  a  ,然后回显这个变量)

2   在向函数传递参数后,要引用参数,因使用  $1  来引用第一个参数,依次递增,如下函数(新建一个文件,写入以下函数,保存为add.sh):

add(){
echo $1$2$3
}
add

运行如下:

可以看到,前三个参数都打印出来了

注意:不要使用  $0  来获取第一个传入的参数,$0 是脚本的名字,如下,将函数改为:

add(){
echo $0
}

add

运行结果:


(有关source请参见:http://blog.csdn.net/lyhdream/article/details/8873297)

3    $? 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误

将函数改为如下:

add(){
let "sum=$1+$2"
return $sum
}

执行结果:

因为我们在函数中返回了sum,及退出状态为sum的值,所以,打印出 3

再看一个例子:

在以上例子中,第一次正常退出,所以打印出0,第二次异常退出,打印1。

4   $$ 脚本运行的当前进程ID号


5   $# 传递到脚本的参数个数,将以上函数改为:

add(){
let "sum=$#"
echo $sum
}


这里向函数传递了4个参数,打印4

参考地址:http://blog.csdn.net/qzwujiaying/article/details/6371246


shell 中引用参数总结相关推荐

  1. shell 中的参数替换

    今天碰到个shell script看了下,发现参数替换是在不懂,google了下,把笔记总结如下:  可替换的参数:处理或/并扩展变量 ${parameter} 和$parameter是相同的,都是表 ...

  2. Shell中的特殊字符

    通配符 当需要用命令处理一组文件,例如file1.txt.file2.txt.file3.txt--,用 户不必一一输入文件名,可以使用Shell通配符.Shell命令的通配符含义如下表 引号 在 S ...

  3. Linux shell中的一个问题 ${}带正则匹配的表达式

    目前在准备龙芯项目的PMON,在研究其编译过程的时候,看到一些make 语句,百思不得其解.后来在shell编程中看到一点资料,牵扯到Shell中的正则表达式.故记录下来,以备后来查阅. 问题: 在某 ...

  4. idea shell 中的函数 跳转_SpringBoot项目打包+shell脚本部署实践,太有用了

    本篇和大家分享的是springboot打包并结合shell脚本命令部署,重点在分享一个shell程序启动工具,希望能便利工作: profiles指定不同环境的配置 maven-assembly-plu ...

  5. SHELL中的引用之引用变量

    引号的特殊效果就是,保护字符串中的特殊字符不被shell 或者是shell 脚本重新解释或者扩展. (这里所说的"特殊"指的是一些字符在shell 中具有的特殊意义,比如*) 在我 ...

  6. SHELL中的变量和参数

    $    变量替换操作符. 只有在变量被声明,赋值,unset 或exported 或者是在变量代表一个signal 的时候, 变量才会是以本来的面目出现在脚本里.变量在被赋值的时候,可能需要使用&q ...

  7. sed在shell脚本中引用变量

    需求 在测试过程中,有很多配置项是写在文件中的,这时想通过脚本来改文件内容,这是个很常见的需求 问题 sed 是linux里很强大好用的文本修改工具,但是在使用过程中,需要在shell里的sed语句中 ...

  8. Go 学习笔记(65)— Go 中函数参数是传值还是传引用

    Go 语言中,函数参数传递采用是值传递的方式.所谓"值传递",就是将实际参数在内存中的表示逐位拷贝到形式参数中.对于像整型.数组.结构体这类类型,它们的内存表示就是它们自身的数据内 ...

  9. C++中的参数传递方式:传值、传地址、传引用总结

    指针:指针是一个变量,只不过这个变量中存储的是一个地址,指向内存中的一个单元. 引用:引用和原变量是同一个东西,只不过是原变量的一个别名. int a = 10; 定义一个整型变量aint *p = ...

最新文章

  1. SQL Server主从数据库同步方式及同步问题解决方案总结
  2. mounted钩子函数_vue3.0项目开发(八)新特性之响应式系统watchEffect函数
  3. html 播放远程视频教程,视频基于HTML5的服务器远程访问工具
  4. linux 产生0~2之间的随机数
  5. Javascript之创建对象(原型模式)
  6. JAVASCRIPT 提示信息 主要是使用了获取控件的位置进行定位
  7. 自编码器(Auto-encoder) (下)它的应用
  8. Apache配置详解(一)
  9. 订单扣款却又被系统删除?携程回应:酒店系统故障导致
  10. list在c语言中的作用,在C语言中大略实现VC++中的LISTARRAY功能方法(一)
  11. ASP.NET AJAX Advance Tips Tricks (11) 三种方法动态创建Tooltip
  12. cmd做个定时弹窗_windows如何设置定时关机?
  13. ZOJ3067_Nim
  14. cmd 无法查看 台式机ip地址
  15. 矩阵求导术(二)——矩阵对矩阵的求导
  16. 又一个程序员,被抓捕!(真实事件)
  17. 在QCreator IDE中 使用 Orge3D
  18. “由于没有公钥,无法验证下列签名”解决办法
  19. C++17之省略不必要的拷贝Copy Elision
  20. 力扣练习——23 救生艇

热门文章

  1. 程序员面试题精选100题(06)-二元查找树的后序遍历结果[数据结构]
  2. 编程之美-俄罗斯方块游戏方法整理
  3. 信息系统项目管理师论文:论项目的风险管理
  4. 《大话数据结构》第9章 排序 9.2 排序的基本概念与分类
  5. 42. Vue、React 等前端项目部署,刷新 404 问题解决方案
  6. 解决计算机问题的一般步骤
  7. Spring EL bean引用实例
  8. 3.5 mysql备份与恢复
  9. 多线程批量ping服务器
  10. NIOS II 创建示例设计_Quartus II 9.0