Chinaunix首页 | 论坛 | 博客
  • 博客访问: 310610
  • 博文数量: 84
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 890
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-13 16:46
文章分类

全部博文(84)

文章存档

2017年(2)

2016年(4)

2015年(78)

我的朋友

分类: LINUX

2015-06-18 19:47:40

shift:造成参数变量号码偏移

  1. [root@RHEL6 scripts]# more sh08.sh
  2. #!/bin/bash
  3. #program:
  4. #program shows the script name,parameters...
  5. #History
  6. #2015//06/17 Awake First release
  7. PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
  8. export PATH

  9. echo "Total parameter number is $#"
  10. echo "Your whole parameter is $@"
  11. shift //进行第一次“一个变量的shift”

  12. echo "Total parameter number is $#"
  13. echo "Your whole parameter is $@"
  14. shift 3 //进行第二次“三个变量的shift”

  15. echo "Total parameter number is $#"
  16. echo "Your whole parameter is $@"

  1. [root@RHEL6 scripts]# ./sh08.sh one two three four five six //给予六个参数
  2. Total parameter number is 6 //最原始的的参数变量情况
  3. Your whole parameter is one two three four five six
  4. Total parameter number is 5 //第一次偏移,看下面发现第一个one不见了
  5. Your whole parameter is two three four five six
  6. Total parameter number is 2 //第二次偏移掉3个,那么也就是“two three four”不见了
  7. Your whole parameter is five six
  8. [root@RHEL6 scripts]#
光看结果你就可以知道,shift会移动变量,而且shift后面可以接数字,代表拿掉最前面的几个参数的意思。
阅读(1099) | 评论(0) | 转发(0) |
0

上一篇:linux grep命令

下一篇:linux 特殊符号大全

给主人留下些什么吧!~~