shift语句的使用

news2024/12/26 9:20:26

[root@vm1 scripts]# help shift
shift: shift [n]
    Shift positional parameters.

    Rename the positional parameters $N+1,$N+2 ... to $1,$2 ...  If N is
    not given, it is assumed to be 1.

    Exit Status:
    Returns success unless N is negative or greater than $#.

说明:

1)在程序中每使用一次shift语句,都会使所有的位置参数依次向左移动默认的一个位置。

2)如果N没有提供的话,就是默认向左移动一个位置。如果给了N,shift N语句,就是向左移动N个位置。

例如:shift 5:就是向左移动5个位置。

看一个小例子:

[root@vm1 scripts]# cat n5.sh
echo $1 $2
if [ $# -eq 2 ];then
    shift
    echo $1
fi


[root@vm1 scripts]# sh n5.sh arg1 arg2
arg1 arg2
arg2

说明:shift语句执行之后,左移一位,也就是$2变成了$1, $1消失。然后再echo $1。但是输出的是传参时的$2的值。

shift会给编程带来一些方便。

再看一个例子:

 

如果看到好的例子,可以补充到这个博客中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/792308.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SWMM模型:水文水动力模型在城市内涝、城市排水、海绵城市规划设计中深度应用

查看原文>>>最新水文水动力模型在城市内涝、城市排水、海绵城市规划设计中深度应用 随着计算机的广泛应用和各类模型软件的发展,将排水系统模型作为城市洪灾评价与防治的技术手段已经成为防洪防灾的重要技术途径。本文聚焦于综合利用GIS及CAD等工具高效地进…

Rust vs Go:常用语法对比(十二)

题图来自 Rust vs Go in 2023[1] 221. Remove all non-digits characters Create string t from string s, keeping only digit characters 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. 删除所有非数字字符 package mainimport ( "fmt" "regexp")func main() { s : hei…

07 |「注解、反射、多线程、锁」

前言 函数 文章目录 前言一、注解二、反射1、作用 三、多线程1、基本概念2、实现方式1)继承 Thread 类2)实现Runnable接口3、常用 API 四、锁1、为什么2、锁 一、注解 注解不影响程序逻辑,但会被编译器在不同阶段(编译、执行&…

【小白必看】利用Python生成个性化名单Word文档

文章目录 前言所需文件及文件格式说明excel数据如下word 模板如下文件目录格式及生成后的文件 导入所需的模块:打开 Excel 文件:选择工作表:获取数据列表:遍历数据并生成 Word 文档:完整代码结束语 前言 对于需要批量…

【Python机器学习】实验03 logstic回归

文章目录 简单分类模型 - 逻辑回归1.1 准备数据1.2 定义假设函数Sigmoid 函数 1.3 定义代价函数1.4 定义梯度下降算法gradient descent(梯度下降) 1.5 绘制决策边界1.6 计算准确率1.7 试试用Sklearn来解决2.1 准备数据(试试第二个例子)2.2 假设函数与前h相同2.3 代价函数与前相…

找不到vcruntime140_1.dll,无法继续执行此代码如何解决

最近我在使用电脑时遇到了一个问题,即出现了vcruntime140_1.dll文件丢失的错误提示。这让我感到非常困惑和烦恼,因为我无法正常运行一些软件和游戏。 vcruntime140_1.dll是一个Windows系统文件,它是Microsoft Visual C Redistributable的一部…

maven本地仓库地址修改+maven国内镜像设置+maven运行所需pos.xml文件配置基本写法

1,maven本地仓库地址修改 maven在使用过程中,本地项目仓库其空间占用会越来越大,但是其默认仓库位置往往是以C盘为主,C盘作为系统盘常常会遇到所在盘空间占满的情况,所以我们将其改至其他硬盘空间位置为适合做法&#…

Vue style中的 scoped 属性

Vue 中存在 scoped 属性,HTML5中也存在一个 scoped 属性,而且,这两者都是针对 css 样式处理的属性,所以很多文章在 解释 Vue scoped 的时候,都会把两者混为一谈,直接进把 HTML5 scoped 的定义搬到 Vue scop…

TikTok带货成功的关键:用户参与与互动

TikTok作为一个社交媒体平台,其带货成功的关键之一是用户参与和互动。在这篇文章中,我们将探讨如何通过激发用户参与和互动,提高TikTok带货的效果。 首先,创造互动性的内容是吸引用户参与的重要因素。在带货视频中,可…

Redis学习路线(1)—— Redis的安装

一、NoSQL SQL VS NoSQL 1、名称 SQL 主要是指关系数据库。NoSQL 主要是指非关系数据库。 2、存储结构 SQL 是结构化的数据库,以表格的形式存储数据。NoSQL 是非结构化的数据库,以Key-Value(Redis),JSON格式文档&…

Linux系统安装Mysql二进制文件

💻前言 为了简化安装和配置过程,许多Linux发行版提供了预编译的二进制MySQL安装包,这些安装包已经经过测试和验证,可以在大多数Linux系统上正常工作。通过安装这些二进制MySQL安装包,可以省去从源代码编译和安装的繁琐…

mysql通过binlog恢复数据

开启binlog 在my.ini中添加以下两行代码: log-binmysql-bin server-id1 注意要写在[mysqld]范围内才会生效 查看binlog存放日志文件目录 show variables like %datadir%; 查看binlog文件名 show master logs; 将binlog转换成sql mysqlbinlog --no-defaults …

个性化-强连接-更智能 伙伴云5大扩展功能详解

伙伴云【小伙开麦】直播间「“伙”速上新」栏目上线,由产品经理讲解产品伙伴云5大功能模块,旨在让业务流程更加清晰、让用户使用操作更加便捷、让业绩转化更高效、让生态连接更顺畅…… 在不断的技术创新过程中,进一步助力数字化转型&#x…

CAN bus off ——ISO11898

什么是can bus off? CAN总线关闭(CAN bus off)是指CAN节点进入一种错误状态,无法继续正常的数据通信。当一个CAN节点的错误计数器超过了设定的阈值时,该节点将进入CAN总线关闭状态。在这种状态下,该节点将停…

opencv-24 图像几何变换03-仿射-cv2.warpAffine()

什么是仿射? 仿射变换是指图像可以通过一系列的几何变换来实现平移、旋转等多种操作。该变换能够 保持图像的平直性和平行性。平直性是指图像经过仿射变换后,直线仍然是直线;平行性是指 图像在完成仿射变换后,平行线仍然是平行线。…

Android 耗时分析(adb shell/Studio CPU Profiler/插桩Trace API)

1.adb logcat 查看冷启动时间和Activity显示时间: 过滤Displayed关键字,可看到Activity的显示时间 那上面display后面的是时间是指包含哪些过程的时间呢? 模拟在Application中沉睡1秒操作,冷启动情况下: 从上可知&…

Python小练习实践

在交互模式下,可以不写print;默认调用 print(repr(a)) 文件模式,必须写print。 If语句 Input语句,返回的是字符串 len(),长度 小练习: 输入一个自己的生日月份 写个if 和else 判断一下当月是否是你的生日…

celery----异步发送短信

1.目录结构 -celery.py --------必须叫这个名字 放定时任务、里面实例化得到app对象 -home_task.py和user_task.py. ----------就是针对不同app的任务文件 2.各文件的内容 celery.py from datetime import timedeltafrom celery import Celery from celery.schedu…

PLL设计-仿真

线性相位裕锁相环模型 out都代表噪声,PFDCP的gain是Icp/2π,LF的传输函数是,VCO传输函数是,分频器增益是1/N 首先不考虑噪声模型 阶跃响应-查看建立时间,下面两条线是上面两条线减1V后的结果,方便查看。 放大上图,输入…

支持向量机(SVM)---代码实现

# coding: utf-8## 感知器模型流程 """1.初始化w, b2.遍历所有训练数据集中选出的误分类点&#xff1a;2.1.如果y ! sign(wxb) 或者 y*(wxb) < 0 则为误分类点2.2 根据误分类点计算&#xff1a;w_new w_old -alpha * 对w的梯度&#xff0c; b_new b_old - …