标签:用途 some hid nbsp 执行 移动 alt dso isp
shift 语句
shift语句按照如下方式重新命名所有的位置参数变量,即$2成为$1,$3成为$2...在程序中每使用一次shift语句,都使所有的位置参数依次向左移动一个位置,并使位置参数$#减1,直到减到0为止。
示例:
[tibasbil@ibastst /ibas]$ set -- "I am" handsome boy [tibasbil@ibastst /ibas]$ echo $# 3 [tibasbil@ibastst /ibas]$ echo $1 I am [tibasbil@ibastst /ibas]$ echo $2 handsome [tibasbil@ibastst /ibas]$ echo $3 boy [tibasbil@ibastst /ibas]$ shift [tibasbil@ibastst /ibas]$ echo $# 2 [tibasbil@ibastst /ibas]$ echo $1 handsome [tibasbil@ibastst /ibas]$ echo $2 boy [tibasbil@ibastst /ibas]$ echo $3 [tibasbil@ibastst /ibas]$ shift [tibasbil@ibastst /ibas]$ echo $# 1 [tibasbil@ibastst /ibas]$ echo $1 boy [tibasbil@ibastst /ibas]$ echo $2 [tibasbil@ibastst /ibas]$ shift [tibasbil@ibastst /ibas]$ echo $# 0 [tibasbil@ibastst /ibas]$ echo $1 [tibasbil@ibastst /ibas]$ #一共有三个参数,每执行一次shift参数前移一次,参数个数减一,一直到减到0为止
此外,Shift 命令还有另外一个重要用途, Bsh 定义了9个位置变量,从 $1 到 $9,这并不意味着用户在命令行只能使用9个参数,借助 shift 命令可以访问多于9个的参数。Shift 命令一次移动参数的个数由其所带的参数指定。例如当 shell 程序处理完前九个命令行参数后,可以使用 shift 9 命令把 $10 移到 $1。
[tibasbil@ibastst /ibas]$ set -- "I am" a handsome boy [tibasbil@ibastst /ibas]$ echo $# 4 [tibasbil@ibastst /ibas]$ echo $1 I am [tibasbil@ibastst /ibas]$ echo $2 a [tibasbil@ibastst /ibas]$ echo $3 handsome [tibasbil@ibastst /ibas]$ echo $4 boy [tibasbil@ibastst /ibas]$ echo $1 I am [tibasbil@ibastst /ibas]$ shift 3 [tibasbil@ibastst /ibas]$ echo $1 boy [tibasbil@ibastst /ibas]$
标签:用途 some hid nbsp 执行 移动 alt dso isp
原文地址:https://www.cnblogs.com/yu-sheng/p/9851290.html