精华内容
下载资源
问答
  • 如何给shell脚本传参数

    万次阅读 2017-07-27 14:24:09
    执行“nano test.sh”创建一个新的shell脚本。 步骤阅读 2 脚本test.sh的内容如下: #!/bin/sh name=$1 echo "the ${name} are great man!" 步骤阅读 3 新创建的test.sh的脚本赋可执行权限,命令为...
    
    1. 执行“nano test.sh”创建一个新的shell脚本。
    2. 脚本test.sh的内容如下:

      #!/bin/sh

      name=$1

      echo "the ${name} are great man!"

    3. 给新创建的test.sh的脚本赋可执行权限,命令为“chmod 755 test.sh”。

    4. 执行'./test.sh "xiao wang"'命令,可以看到自己编写脚本的结果“the xiao wang are great man!”。

    5. "name=$1"中$1为系统提供的位置参数,$0代表程序的名称,[$1/$2/...]从1开始为传递的参数。

    6. linux系统除了提供位置参数还提供内置参数,内置参数如下: 

              $# ----传递给程序的总的参数数目  

            $? ----上一个代码或者shell程序在shell中退出的情况,如果正常退出则返回0,反之为非0值。   

               $* ----传递给程序的所有参数组成的字符串。   

              $n ----表示第几个参数,$1 表示第一个参数,$2 表示第二个参数 ...   $0 ----当前程序的名称   

               $@----以"参数1" "参数2" ... 形式保存所有参数   

               $$ ----本程序的(进程ID号)PID   

               $! ----上一个命令的PID

      END
    展开全文
  • 主要介绍了Shell脚本传参数方法总结,本文着重讲解传递固定个数参数的方法、可变个数参数的方法两部份内容,需要的朋友可以参考下
  • 问题:对于shell脚本,$0表示脚本... 答案:通过awk的变量定义,把shell脚本参数值赋值awk的自定义变量,然后通过变量引用,使用shell进来的参数  举例:下面的脚本test.sh内容如下,带参数执行脚本:sh tes...

      问题:对于shell脚本,$0表示脚本本身,$1表示脚本的第一个参数,$2……依次类推;对于awk,$1表示分割后的第一个字段,$2……依次类推。那么对于shell脚本中的awk如何区分两者呢?

      答案:通过awk的变量定义,把shell脚本的参数值赋值给awk的自定义变量,然后通过变量引用,使用shell传进来的参数

      举例:下面的脚本test.sh内容如下,带参数执行脚本:sh test.sh test,其中uid的值就是参数test   

    1 step=2 #间隔的秒数,不能大于60
    2 for (( i = 0; i < 60; i=(i+step) ))
    3 do
    4     dstat -c -m -l -n -N eth0 -r -T -y 1 1 | sed -n '4,$p' | awk -F'[ \\|]' '{for(i=1;i<=NF;i++)printf $i" "; print "\n"}' | grep -v '^$' | awk -vuid=$1 '{cmd="curl  http://10.5.20.25:5000/intelligentPressure -d \"uid="uid"&cpu_usr="$1"&cpu_sys="$2"&cpu_idl="$3"&cpu_wai="$4"&cpu_hiq="$5"&cpu_siq="$6"&mem_used="$7"&mem_buff="$8"&mem_cach="$9"&mem_free="$10"&load_1m="$11"&load_5m="$12"&load_15m="$13"&net_eth0_recv="$14"&net_eth0_send="$15"&io_read="$16"&io_writ="$17"&epoach="$18"&sys_int="$19"&sys_csw="$20"\" -H  \"Authorization: token you_mast_auth\"";system(cmd)}'
    5     sleep $step
    6 done
    7 exit 0

     如果多个变量,就定义多个:awk -v a=$1 -v b=$2

    参考:

    1、http://www.runoob.com/linux/linux-comm-awk.html

    2、https://blog.csdn.net/cy_cai/article/details/41908921

    展开全文
  • Shell脚本基础4-shell脚本如何传参数

    千次阅读 2017-05-21 10:40:53
    本文介绍shell脚本如何传参数和一些关于参数的简单使用场景介绍。 1.利用echo打印你传入的参数 上面用gedit打开demo.sh文件,上面我们输入了三个真实的参数,第一个是Anthony,第二个是Tom,第三个是Lucy,echo...

    本文介绍shell脚本如何传参数和一些关于参数的简单使用场景介绍。

    1.利用echo打印你传入的参数

    上面用gedit打开demo.sh文件,上面我们输入了三个真实的参数,第一个是Anthony,第二个是Tom,第三个是Lucy,echo语句中$1 $2 $3是分别对应输入的三个参数,所以运行打印出来的就是三个参数具体名称。$[i],i是索引号,和Python中列表读取元素是一样道理,采用索引。

    2.echo语句中插入一个$0,看看输出是什么

    上面可以看到$0表示 我们运行sh文件的语句 ./demo.sh,这个不是一个我们提供的真实的参数。

    3.换成args数组方式去存储参数列表

    4.针对步骤3,我们有更简洁方法

    $@可以表示传入参数列表,直接打印出来。

    5.如何计算参数个数

    $#可以存储参数的个数值。

    PS:上面没有写清楚如何新建sh文件,如何保存,如果添加权限,这些都在前面文章介绍了,不会的看前面文章,以后文章都是这样风格,不在啰嗦这些基础的东西。



    展开全文
  • 在linux环境下,编写shell脚本,去调用执行mongo的命令,有时候通过shell去mongo传递参数的时候,会有很多坑。这里记录一下调用方法。 查询: #! /bin/bash qdate=1578557103430 mongo="/opt/mongodb/bin/mongo" ...

    在linux环境下,编写shell脚本,去调用执行mongo的命令,有时候通过shell去给mongo传递参数的时候,会有很多坑。这里记录一下调用方法。

    查询:

    #! /bin/bash
    qdate=1578557103430
    mongo="/opt/mongodb/bin/mongo"
    port=28018
    dbname="test"
    colname="user"
    
    sql="DBQuery.shellBatchSize=9999999999999;db.$colname.find({"createdTime" :{\$lt:NumberLong(\"$qdate\")}});"
    echo $sql|$mongo --port $port $dbname
    

    导出:

     $mongoexport -h 127.0.0.1:$port -d $dbname -c $colname -q '{createdTime:{$lte:NumberLong('$qdate')}}' -o $dumpfile
    
    展开全文
  • 之所以用到命令行参数,关键...shell脚本自动将命令行参数赋值各个位置变量。同时输入多个参数可以是数值也可以是字符串)时,必须使用空格分隔要想在参数值中包含空格,就必须使用单引号或双引号)当参数多于9个后,
  • shell命令传参数参数长度不定)

    千次阅读 2018-03-27 13:17:00
    脚本 sudo echo "[mysqlMaster<$1>]" >> /home/admin/hostrecord count=2 while [ $# -ge 2 ];do sudo echo $2 >> /home/admin/hostrecord sudo echo "ansible_ssh_user=rootansi...
  • 如何给shell脚本传入参数小结

    万次阅读 2017-08-17 10:32:21
    执行“vim test.sh”创建一个新的shell脚本。脚本test.sh的内容如下: #!/bin/sh name=$1 echo "the ${name} are great man!" 新创建的test.sh的脚本赋可执行权限,命令为“chmod +x test.sh”
  • Linux常用的命令都可指定参数名和参数值,然而我们怎样才能自己的shell脚本也采用参数名和参数值这样的方式来获取参数值呢?而不是通过$1,$2这种方式进行获取。下面的例子定义了短参数名和长参数名两种获取参数值...
  • curl方式执行shell脚本传参数

    千次阅读 2019-04-10 11:38:00
    curl方式执行shell脚本传参数 有时候shell脚本可以放在http页面上,不用download,可以直接执行。 通常我们可以用curl的方式执行http页面上的shell脚本。 一般方式是: curl ...
  • 问题: 我写的shell程序传入的参数是 s1 s2都是字符串。 s1是 -P 22 /home/ s2是/home ...传给s1,/home传给s2? 解决方法: 使用system调用的话,必须使用字符串; 如下: char str[1
  • Shell脚本通过参数名传递参数

    千次阅读 2020-02-06 18:08:11
    Linux常用的命令都可指定参数名和参数值,然而我们怎样才能自己的shell脚本也采用参数名和参数值这样的方式来获取参数值呢?而不是通过$1,$2这种方式进行获取。下面的例子定义了短参数名和长参数名两种获取参数值...
  • Shell - 传递参数Shell 脚本

    千次阅读 2019-10-26 10:41:41
    文章目录Shell - 传递参数Shell 脚本1、参数传递规则2、参数引用规则3、执行文件参数4、获得传递的参数个数5、其它特殊组合 Shell - 传递参数Shell 脚本 1、参数传递规则 以空格分隔开 ./xxx.sh 1 2 3 2、参数...
  • Shell脚本参数传递

    2017-04-25 10:44:34
    Shell脚本参数从命令行传递给Shell脚本参数又称为位置参数,这主要是因为Shell脚本会根据参数的位置来接受它们的数据。在Shell脚本的内部,用户可以通过一系列的系统变量来获取参数。这些变量的名字都是固定的,...
  • Java调用shell脚本传带空格参数

    千次阅读 2014-12-13 17:05:38
    我们知道传递给shell脚本参数是以空格分开的,如果参数中有空格该怎么处理呢? 在Java程序中可以调用shell脚本来完成一些与Linux系统相关度较高的工作,其调用方式主要可以有以下两种: 1. Process process = null...
  • 主要介绍了Shell脚本通过参数名传递参数的实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 主要介绍了Shell脚本传递参数的3种方法比较,本文直接出代码示例,在代码中包含详细注解,需要的朋友可以参考下
  • shell脚本通过参数名传递参数

    千次阅读 2019-09-24 16:53:18
    Linux常用的命令都可指定参数名和参数值,然而我们怎样才能自己的shell脚本也采用参数名和参数值这样的方式来获取参数值呢?而不是通过$1,$2这种方式进行获取。下面的例子定义了短参数名和长参数名两种获取参数值...
  • shell mysql命令 传参数

    千次阅读 2016-04-15 16:18:36
    1.使用-e参数传递命令,适用于简单语句  mysql -uuser -ppasswd -e "create database dbtest;" 2.使用EOF传递复杂语句  mysql -uuser -ppasswd  create database dbtest;  us
  • shell脚本传递参数的方法

    千次阅读 2017-04-22 14:38:12
    在网上看到这边shell 脚本传递参数的方法,觉得写得很详细,收藏起来方便以后查找。 一、接收固定长度的参数 复制代码代码如下: [root@svn shell_example]# cat params.sh #!/bin/bash #传参...
  • Shell脚本命令选项参数处理

    千次阅读 2017-09-17 10:43:58
    Shell脚本命令选项参数处理 Shell脚本参数处理主要分三种情况,下面我们一一演示说明。 1、不带选项的参数处理 首先,我们通过一个不带选项的参数处理脚本,让大家了解一下shell脚本的常用内置参数。 #!/bin...
  • shell脚本参数优美用法

    千次阅读 2017-05-31 17:36:44
    shell脚本参数优美用法 1. 示例脚本 2. 转载阅读 2.1 getopt命令的用法 2.2 示例
  • 解决Unity不能调用shell脚本传递参数的问题

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 465,335
精华内容 186,134
关键字:

给shell脚本传参数