Bash Shell中Shift用法分享
shift可以用来向左移动位置参数。
Shell的名字 $0
第一个参数 $1
第二个参数 $2
第n个参数 $n
所有参数 $@ 或 $*
参数个数 $#
shift默认是shift 1
以下边为例:
cat shift.sh
#----------------------------输出文字-开始----------------------------
#!/bin/bash
until [ -z "$1" ] # Until all parameters used up
do
echo "$@ "
shift
done
#----------------------------输出文字-结束----------------------------
sh shift.sh 1 2 3 4 5 6 7 8 9
#----------------------------输出文字-开始----------------------------
1 2 3 4 5 6 7 8 9
2 3 4 5 6 7 8 9
3 4 5 6 7 8 9
4 5 6 7 8 9
5 6 7 8 9
6 7 8 9
7 8 9
8 9
9
#----------------------------输出文字-结束----------------------------
相关推荐
-
Shell函数的7种用法介绍
1. 在shell文件内部定义函数并引用: 复制代码 代码如下: [~/shell/function]# cat factorial.sh #!/bin/bash function factorial { factorial=1 for (( i=1;i <= $1;i++ )) do factorial=$[ $factorial * $i ] done echo $1的阶乘是:$factorial } echo '程序名':$0,用于求阶乘 f
-
linux shell命令行选项与参数用法详解
问题描述:在linux shell中如何处理tail -n 10 access.log这样的命令行选项?在bash中,可以用以下三种方式来处理命令行参数,每种方式都有自己的应用场景.1,直接处理,依次对$1,$2,...,$n进行解析,分别手工处理:2,getopts来处理,单个字符选项的情况(如:-n 10 -f file.txt等选项):3,getopt,可以处理单个字符选项,也可以处理长选项long-option(如:--prefix=/home等).总结:小脚本手工处理即可,getopt
-
Shell脚本中让进程休眠的方法(sleep用法)
有时候写Shell的脚本,用于顺序执行一系列的程序. 有些程序在停止之后并没能立即退出,就例如有一个 tomcat 挂了,就算是用 kill -9 命令也还没瞬间就结束掉. 这么如果 shell 还没等其退出就接着执行下一行,这么就出乱子了. 刚知道了原来 shell 也能有 sleep 的参数. 复制代码 代码如下: sleep 1 睡眠1秒 sleep 1s 睡眠1秒 sleep 1m 睡眠1分 sleep 1h 睡眠1小时 用法如下,例如重启tomcat: 复制代码 代码如下: #!/bi
-
shell中case的用法学习笔记
shell中的case语句: 可以把变量的内容与多个模板进行匹配,再根据成功匹配的模板去决定应该执行哪部分代码. 使用格式:case 匹配母板 in模板1 [ | 模板2 ] - ) 语句组 ;;模板3 [ | 模板4 ] - ) 语句组 ;;esaccase语句的匹配是从上往下地匹配顺序.因此,case语句编写的原则是从上往下,模板从特殊到普通.在C语言里,case语句中有default模板,而在shell程序设计中,可能将模板写成*,就可以完成相同的功能. 例1: 复制代码 代码如下: #!
-
Shell常见用法小记
shell的简单使用 最近发现shell脚本在平常工作中简直算一把瑞士军刀,很多场景下用shell脚本能实现常用的简单需求,而之前都没怎么学习过shell,就趁机把shell相关的语法和常见用法总结了下,方便以后随时回顾和查阅! 1. 综述 shebang 其实shell的开始并不难,第一行如下: #!/bin/bash 叫做shebang 注释 shell的注释以#开头(这点类似于python) 变量 变量定义: var_test1="hello" 注意定义和赋值时=两边均不能有空格
-
ShellExecute函数用法的实例代码
复制代码 代码如下: #include<windows.h>#include<stdio.h>int main(){ //打开记事本 // ShellExecute(NULL, "open", "notepad.exe", NULL, NULL, SW_SHOWNORMAL); //使用notepad.exe 打开指定文本,参数不要忘记加'\' //ShellExecute(NULL, "open", &
-
shell中冒号的特殊用法分享
: ${VAR:=DEFAULT} 当变量VAR没有声明或者为NULL时,将VAR设置为默认值DEFAULT.如果不在前面加上:命令,那么就会把${VAR:=DEFAULT}本身当做一个命令来执行,报错是肯定的.
-
Shell中eval的用法示例
功能说明:告知shell取出eval的参数,重新运算求出参数的内容. 语 法:eval [参数] 补充说明:eval可读取一连串的参数,然后再依参数本身的特性来执行. 参 数:参数不限数目,彼此之间用分号分开. 1.执行命令行之前扫描它两次,再次运算求出参数的内容. 复制代码 代码如下: [root@localhost blue]# a="ls |more" [root@localhost blue]# $a
-
linux shell命令行参数用法详解
习惯使用linux命令行来管理linux系统,例如: 复制代码 代码如下: $ date 二 11 23 01:34:58 CST 1999 $ 用户登录时,实际进入了shell,它遵循一定的语法将输入的命令加以解释并传给系统.命令行中输入的第一个字必须是一个命令的名字,第二个字是命令的选项或参数,命令行中的每个字必须由空格或TAB隔开,格式如下: 复制代码 代码如下: $ Command Option Arguments 一,选项和参数 选项是包括一个或多个字母的代码,它前面有一个减号(减
-
Shell脚本数组用法小结
array作为一种数据结构,在一些高级语言中都是有直接提供和实现的,当然我shell中也是有的哈. PS:写这篇文章的原因是B哥在群里发了一个截图: 我大B哥依然是全能型人才哈...废话少说,说下正题 1.怎么声明一个数组变量? 直接赋值: 复制代码 代码如下: array[0]="Zero" array[1]="One" array[2]="Two" declare声明: 复制代码 代码如下: declare -a array 小括号空格法:
随机推荐
- vmware 实现linux目录映射window本地目录图文详解
- Win7彻底卸载Oracle 11g图文步骤(靠谱)
- 基于jQuery实现文本框只能输入数字(小数、整数)
- javascript 写类方式之一
- 浅析Python中的赋值和深浅拷贝
- 独立图片服务器的图片上传的解决方式
- iOS输出手机系统版本号
- JavaScript如何实现在文本框(密码框)输入提示语
- 两行代码轻松搞定JavaScript日期验证
- springmvc实现简单的拦截器
- 世界各国及地区纸币 World paper currency
- 批量修改ssh配置的expect脚本
- matplotlib实现热成像图colorbar和极坐标图的方法
- 使用python 写一个静态服务(实战)
- 使用docker+devpi搭建本地pypi源的方法
- Android 7.0 SEAndroid app权限配置方法
- SpringBoot导入mail依赖报错问题解决
- 对pandas通过索引提取dataframe的行方法详解
- Python绘制KS曲线的实现方法
- tensorflow使用range_input_producer多线程读取数据实例