使用linux的shift命令移动位置参数
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章将为大家详细讲解有关使用linux的shift命令移动位置参数,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。shift命令用于对参数的移动(左移),通常用于
千家信息网最后更新 2026年11月03日使用linux的shift命令移动位置参数
这篇文章将为大家详细讲解有关使用linux的shift命令移动位置参数,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
shift命令用于对参数的移动(左移),通常用于在不知道传入参数个数的情况下依次遍历每个参数然后进行相应处理(常见于Linux中各种程序的启动脚本)。
对于某个命令行参数,其参数个数可以不固定,但是可以通过$*或$@进行循环操作。若用户要求Shell在不知道变量个数的情况下,还能逐个处理参数,也就是在$1之后是$2,$2之后是$3。在未运行shift命令之前$1是可用的,当使用shift命令之后,原来的$2会变成$1,并且原有的$1变得不可用,通过$#命令获得的参数个数也会少1。
语法格式:shift [参数]
常用参数:
参考实例
依次读取输入的参数并打印参数个数:
run.sh 内容如下:
#!/bin/bashwhile [ $# != 0 ];doecho "第一个参数为:$1,参数个数为:$#"shiftdone 输入如下命令运行:run.sh a b c d e f 结果显示如下:第一个参数为:a,参数个数为:6第一个参数为:b,参数个数为:5第一个参数为:c,参数个数为:4第一个参数为:d,参数个数为:3第一个参数为:e,参数个数为:2第一个参数为:f,参数个数为:1
把参数进行左移3个:
#!/bin/bashecho -e "./t.sh arg1 arg2 arg3 arg4 arg5 arg6"str1="${1},${2},${3}"echo "str1=$str1"shift 3str2=$@echo "str2=$str2"sh t.sh 1 2 3 4 5 6 7str1=1,2,3将参数从左到右逐个移动:
[root@linuxcool ~]# cat shift.sh#!/bin/bashwhile [ $# -ne 0 ]doecho "第一个参数为: $1 参数个数为: $#"shiftdone[root@linuxcool ~]# sh shift.sh Lily Lucy Jake Mike第一个参数为: Lily 参数个数为: 4第一个参数为: Lucy 参数个数为: 3第一个参数为: Jake 参数个数为: 2第一个参数为: Mike 参数个数为: 1
关于使用linux的shift命令移动位置参数就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
参数
个数
命令
移动
位置
内容
情况
更多
篇文章
参考
处理
输入
运行
不错
实用
也就是
变量
可以通过
实例
常用
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
咖啡网
花魁咖啡
上海睿民互联网科技有限公司
互联网科技工作委员会
今日互联网科技
互联网科技金融
猪兼强互联网科技
远信互联网科技
百单互联网科技有限公司
米客互联网科技
齐家互联网科技有限公司
银川新华互联网科技学校地址
常德市电业局互联网科技部
佳云科技和互联网广告
互联网媒体平台算高科技产业
半导体行业属于互联网高科技类吗
抖集互联网科技技术咨询
艺电能源互联网科技有限公司招聘
科技和互联网行业的特点
互联网大会出现的黑科技
什么是科技互联网
互联网扶贫科技
西安互联网科技
天下捷融互联网科技
互联网科技英文翻译
玖二柒互联网科技公司待遇
南平创想时代互联网科技有限公司
民营互联网公司国防科技
伍佰万互联网科技怎么赚钱
万物互联网智能科技