Shell初学(三)传参

一、

脚本代码:test.sh

echo "Shell 传递参数实例!";
echo "执行的文件名:$0";
echo "第一个参数为:$1";
echo "第二个参数为:$2";
echo "第三个参数为:$3";
执行的文件名:./test.sh
第一个参数为:1
第二个参数为:2
第三个参数为:3
参数处理 说明
$# 传递到脚本的参数个数
$* 以一个单字符串显示所有向脚本传递的参数。
如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。
$$ 脚本运行的当前进程ID号
$! 后台运行的最后一个进程的ID号
[email protected] 与$*相同,但是使用时加引号,并在引号中返回每个参数。
如"[email protected]"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数。
$- 显示Shell使用的当前选项,与set命令功能相同。
$? 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。


原文地址:https://www.cnblogs.com/gered/p/8145824.html

时间: 2024-10-13 22:01:10

Shell初学(三)传参的相关文章

关于Shell脚本read传参问题

Shell脚本传参有两种方式: 方式1:sh  file.sh  arg1 arg 2.... 方式2:read -p "提示"  arg 1 arg2 默认参数直接是以空格进行区分的,下面通过几个实例讲解一下传参遇到的问题及困惑 方式一:通过脚本实例展示 [[email protected] ~]# cat arg1.sh  #!/bin/bash funChag() {   echo $1 $2 } main() {   echo $1 $2   funChag $1 $2 } m

shell命令行传参个数大于9个的参数写法

$10  $11  $12等都会被解析为 $1 方法是 ${10}   ${11}  用一对花括号把参数引起来

(九)shell中case语句、程序传参、while

2.2.6.1.case语句(1)shell中的case语句和C语言中的switch case语句作用一样,格式有差异(2)shell中的case语句天生没有break,也不需要break,和C语言中的switch case不同.shell中的case默认就是匹配上哪个执行哪个,不会说执行完了还去执行后面的其他case(就好像shell中的case语言默认都带了break). 2.2.6.2.调用shell程序的传参(1)C语言中可以通过main函数的argc和argv给程序传参(详情参考<4.

Shell传参的多种方式

Shell 传参的多种方式 使用$1 $2 这种类似占位符的方式 # 命令行调用 start.sh 8080 9090 # 脚本中获取 port1=$1 # 8080 port2=$2 # 9090 可以看出来这种方式使用起来很简单,但灵活性太差,比如我只想传第二个参数,第一个使用默认值,这个就不行,所以就有第二种,指定参数传递 指定参数 getopts(shell内置命令) #命令行调用 start.sh -a 8080 -b 9090 # 脚本中获取 while getopts "d:b:h

shell脚本传参

写了个脚本自动生成pdf上传github受不了每次相同的commit决定使用脚本传参 简单好用使用加粗方法,更复杂的可以参考下面两个详解. 如何给shell脚本传参数 http://jingyan.baidu.com/article/b24f6c822645b786bfe5daff.html #!/usr/bin/zsh xelatex -synctex=1 -interaction=nonstopmode "leetcode-cpp".tex > makepdf.log cd

WebApi传参总动员(三)

上篇介绍了如何从输入流中获取实体对象.本篇介绍以url形式传递参数.简单的参数不再赘述,这里主要实现形如(string name,Woman woman)这样的参数传递. 本篇及后面几章均涉及js调用及C#调用,而且篇幅较长,请大家见谅. 一.js调用. WebApi: public class ValuesController : ApiController { [HttpPost] public string GetData(string name,Woman woman) { return

shell基础:使用read、命令行脚本传参实现输入2个整数并计算

shell基础练习题:使用read交互输入,命令行脚本传参2种方式,实现输入2个整数数字,并计算加减乘除.考察shell基础知识包括:变量定义.read.if判断语句.正则表达式等知识: 第一种方式:read交互输入参数 思路为:判断输入的第2个变量是否为空,为空则提示输入2个数字:不为空则判断输入的是否为整数,用到expr,作用为让2个变量进行相加,如果结果为0说明输入2个为数字,如结果非0则说明输入非整数,提示输入的不是非整数: #!/bin/bash read -p "pls input 

vue 路由传参的三种基本模式

路由是连接各个页面的桥梁,而参数在其中扮演者异常重要的角色,在一定意义上,决定着两座桥梁是否能够连接成功. 在vue路由中,支持3中传参方式. 场景,点击父组件的li元素跳转到子组件中,并携带参数,便于子组件获取对应li的数据,显示相应的正确的内容. 父组件中: <li v-for="article in articles" @click="getDescribe(article.id)"> 方案一: getDescribe(id) { // 直接调用$

SHELL传参简单实例

说明:shell传参,顾名思义就是将参数传送到shell脚本里,我们可以将一些参数以sh scripts.sh 参数 参数+1 参数+2 的方式执行.脚本内获取参数的格式为:$n n 代表一个数字,$1 为执行脚本的第一个参数(对应上面的参数)$2 为执行脚本的第二个参数,以此类推-- 下面就举一个简单的栗子: 1.首先编辑一个简单的脚本,如下:[[email protected] 01]# vim 1.sh #!/bin/bashecho "I am $1,you are $2."

第五章 shell函数的定义、执行、传参和递归函数

第五章 shell函数的定义.执行.传参和递归函数 Bash(Bourne Again shell)也支持函数,在编写大型复杂脚本的时候,可以用函数把代码编写成一个一个功能相对独立的代码块,使代码模块块.结构清晰.有效的减少程序的代码量.但是bash shell是一种解释性语言,执行效率没有编译性语言高. shell函数的定义 格式一:( function name() { command sequence (命令序列) } 格式二: name() { command sequence (命令序