简单介绍python的脚本传参

我们知道python脚本传递参数,有一个很方便的方式-sys.argv.它将脚本本身名字和后面的各项参数都放入一个列表。

使用的时候,索引这个列表就可以了。例如:

python test.py yes 10

sys.argv[0] # 脚本本身名字 (字符串test.py)

sys.argv[1] # 脚本后面第一个参数 (字符串yes)

sys.argv[2] # 脚本后面第2个参数  (字符串10)

其他参数以此类推,需要注意的是索引是有顺序的,这就要求你脚本传参的时候与索引的顺序一致。

shell脚本传参

shell脚本与python相似;想脚本传递参数的格式为:$n。n代表一个数字,类似于上面python传参里的索引,0为脚本本身的名字,

1为执行脚本的第一个参数,2为执行脚本的第二个参数。。。

举个例子:下面脚本test.sh

#!/bin/bash

echo "我们执行的脚本名是: $0"

echo "传入的第一个参数是: $1"

echo "传入的第二个参数是: $2"

执行的格式是: bash test.sh first second

另外,下面几个特殊字符对你处理参数可能会有些帮助。

$#  传递到脚本参数的个数

$$  脚本运行当前的ID号

$*  以一个字符串显示所有向脚本传递的参数

$@  与$*类似,但是使用时加引号,并在引号中返回每个参数

getopts传参

while getopts ":a:b:c:" opt; do

  case $opt in
    a)
    echo "参数a的值$OPTARG";;
    b)
    echo "参数b的值$OPTARG";;
    c)
    echo "参数c的值$OPTARG";;
    ?)
    echo "未知参数"
    exit ;;
    esac
  done # ----------------------------------------
# 来源:CSDN 
# 原文:https://blog.csdn.net/sinat_36521655/article/details/79296181 
# ----------------------------------------

执行格式:bash test.sh -a 1 -b 2 -c 3

shell传递参数的更多相关文章

  1. Shell 传递参数

    Shell 传递参数 向脚本传递参数,格式为:$n. 向脚本传递三个参数,并分别输出: echo "Shell 传递参数实例!"; echo "第一个参数为:$1&quo ...

  2. 2. Shell 传递参数

    1. 概要 我们可以在执行 Shell脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推-- #!/bin/bas ...

  3. Shell传递参数【转载】

    Shell 传递参数 我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… 实例 以 ...

  4. Shell 传递参数(转)

    我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… 实例 以下实例我们向脚本传递三 ...

  5. Linux学习笔记 -- 为 Shell 传递参数

    我们可以在执行 Shell 脚本时,可以向脚本传递参数.脚本内获取参数的格式为:$n.(n 代表一个数字,0为所执行的shell脚本名称,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类 ...

  6. 三、Shell 传递参数

    Shell 传递参数 我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… 实例 以 ...

  7. shell传递参数(三)

    $n:n代表一个数字,指执行脚本的第n个参数.特别地,$0指执行的文件名 [root@ipha-dev71- exercise_shell]# cat test.sh #!/bin/bash echo ...

  8. 吴裕雄--天生自然ShellX学习笔记:Shell 传递参数

    在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… 实例 以下实例我们向脚本传递三个参数, ...

  9. shell脚本学习- 传递参数

    跟着RUNOOB网站的教程学习的笔记 我们可以在执行shell脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n代表一个数字,1为执行脚本的第一参数,2为执行脚本的第二个参数,以此类推... 实 ...

随机推荐

  1. <Dare To Dream>团队项目用户验收评审

    实验十二 团队作业8—团队项目用户验收评审 任务1:团队作业Beta冲刺 Beta冲刺第一天:http://www.cnblogs.com/Dare-To-Dream/p/9226994.html B ...

  2. 【C++】C++中int与string的相互转换

    一.int转string 1.c++11标准增加了全局函数std::to_string: string to_string (int val); string to_string (long val) ...

  3. django项目 报错:ImportError: cannot import name choice

    今天项目开发中遇到一个错误,排查了很久才发现原因,现在分享出来,希望对大家有所帮助. 错误描述:在项目中添加了一个random.py的类,导入random中的choice,并在randstr方法中使用 ...

  4. Java框架spring 学习笔记(九):Spring的bean管理(@Required、@Component、@Autowired、@Resource注解)

    注解:代码里面特殊的标记,使用注解可以完成相关功能 注解写法:@注解名称(属性名.属性值) @Required 用在set方法上,一旦用了这个注解,那么容器在初始化bean的时候必须要进行set,也就 ...

  5. word文件转html字符串(包涵格式和图片)

    新项目客户有需求,用word编辑新闻,上传到服务器并显示到富文本编辑器,编辑后保存为html格式的文本.实现如下: 首先引用 Microsoft.Office.Interop.Word.dll(需要安 ...

  6. 记录-eureka

    我的工程目录是这样的: eureka- server:服务端 EurekaServerApplication的内容: 服务端配置文件内容: eureka-server :服务端 pom 文件: < ...

  7. 洛谷 P1426小鱼会有危险吗

    题目: 有一次,小鱼要从A处沿直线往右边游,小鱼第一秒可以游7米,从第二秒开始每秒游的距离只有前一秒的98%.有个极其邪恶的猎人在距离A处右边s米的地方,安装了一个隐蔽的探测器,探测器左右x米之内是探 ...

  8. HashTable和HashMap的区别详解(转)

    一.HashMap简介 HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长. HashMap是非线程安全的, ...

  9. 面向对象的 __slots__

    优点: 1. __slots__ 能够减小内存的占用,限制对象只能有这几个属性,再加属性会报错 . 副作用: 1. 设置了__slots__之后,实例对象就没有__dict__了 2. __slots ...

  10. 基于角色的访问控制 (RBAC)权限管理

    RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成“用户-角色- ...