加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

shell变量------shift

发布时间:2020-12-15 23:18:14 所属栏目:安全 来源:网络整理
导读:shift 语句 shift语句按照如下方式重新命名所有的位置参数变量,即$2成为$1,$3成为$2...在程序中每使用一次shift语句,都使所有的位置参数依次向左移动一个位置,并使位置参数$#减1,直到减到0为止。 示例: [[email?protected] /ibas]$ set -- " I am " ha

shift 语句

shift语句按照如下方式重新命名所有的位置参数变量,即$2成为$1,$3成为$2...在程序中每使用一次shift语句,都使所有的位置参数依次向左移动一个位置,并使位置参数$#减1,直到减到0为止。

示例:

[[email?protected] /ibas]$ set -- "I am" handsome boy
[[email?protected] /ibas]$ echo $#
3
[[email?protected] /ibas]$ echo $1 
I am
[[email?protected] /ibas]$ echo $2
handsome
[[email?protected] /ibas]$ echo $3
boy
[[email?protected] /ibas]$ shift
[[email?protected] /ibas]$ echo $#
2
[[email?protected] /ibas]$ echo $1
handsome
[[email?protected] /ibas]$ echo $2
boy
[[email?protected] /ibas]$ echo $3

[[email?protected] /ibas]$ shift
[[email?protected] /ibas]$ echo $#
1
[[email?protected] /ibas]$ echo $1
boy
[[email?protected] /ibas]$ echo $2

[[email?protected] /ibas]$ shift
[[email?protected] /ibas]$ echo $#
0
[[email?protected] /ibas]$ echo $1

[[email?protected] /ibas]$ 
#一共有三个参数,每执行一次shift参数前移一次,参数个数减一,一直到减到0为止
View Code

此外,Shift 命令还有另外一个重要用途,Bsh 定义了9个位置变量,从 $1 到 $9,这并不意味着用户在命令行只能使用9个参数,借助 shift 命令可以访问多于9个的参数。Shift 命令一次移动参数的个数由其所带的参数指定。例如当 shell 程序处理完前九个命令行参数后,可以使用 shift 9 命令把 $10 移到 $1。

[[email?protected] /ibas]$ set -- "I am" a handsome boy
[[email?protected] /ibas]$ echo $#
4
[[email?protected] /ibas]$ echo $1
I am
[[email?protected] /ibas]$ echo $2
a
[[email?protected] /ibas]$ echo $3
handsome
[[email?protected] /ibas]$ echo $4
boy
[[email?protected] /ibas]$ echo $1
I am
[[email?protected] /ibas]$ shift 3
[[email?protected] /ibas]$ echo $1
boy
[[email?protected] /ibas]$ 
View Code

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读