Linux Shell 如何获取参数的方法

 更新时间:2020-11-19 04:08:39   作者:佚名   我要评论(0)

$# 是传给脚本的参数个数

$0 是脚本本身的名字

$1 是传递给该shell脚本的第一个参数

$2 是传递给该shell脚本的第二个参数

$@ 是传给脚本的所有参数的列表

$# 是传给脚本的参数个数
$0 是脚本本身的名字
$1 是传递给该shell脚本的第一个参数
$2 是传递给该shell脚本的第二个参数
$@ 是传给脚本的所有参数的列表
$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个
$$ 是脚本运行的当前进程ID号
$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误

区别:$@, $*

  • 相同点:都是引用所有参数
  • 不同点:$* 和 $@ 都表示传递给函数或脚本的所有参数,不被双引号(" ")包含时,都以"$1" "$2" … "$n" 的形式输出所有参数。但是当它们被双引号(" ")包含时,"$*" 会将所有的参数作为一个整体,以"$1 $2 … $n"的形式输出所有参数;"$@" 会将各个参数分开,以"$1" "$2" … "$n" 的形式输出所有参数。

$*和$@详细区别请看此处

 #!/bin/bash

echo "-----------------"
for key in "$@"
do
 echo '$@' $key
done
echo "-----------------------------"
for key2 in $*
do
 echo '$*' $key2
done

1、带引号执行及结果:

[root@localhost ~]# bash file.sh linux "python c"
-----------------
$@ linux
$@ python c
-----------------------------
$* linux
$* python
$* c

2、不带引号执行及结果:

[root@localhost ~]# bash file.sh linux python c
-----------------
$@ linux
$@ python
$@ c
-----------------------------
$* linux
$* python
$* c

到此这篇关于Linux Shell 如何获取参数的方法的文章就介绍到这了,更多相关Linux Shell 获取参数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • shell获取命令行参数示例分享
  • shell学习教程获取命令行参数示例

相关文章

  • Linux Shell 如何获取参数的方法

    Linux Shell 如何获取参数的方法

    $# 是传给脚本的参数个数 $0 是脚本本身的名字 $1 是传递给该shell脚本的第一个参数 $2 是传递给该shell脚本的第二个参数 $@ 是传给脚本的所有参数的列表
    2020-11-19
  • shell模糊匹配与正则详解

    shell模糊匹配与正则详解

    前言: 正则可以实现一些简单的功能,并用在脚本中,如检测ip地址是否符合规范,检测文件名是否符合规范等等。 正则表达式 正则表达式主要是用来描述一个句法规则
    2020-11-19
  • 详解shell中脚本参数传递的两种方式

    详解shell中脚本参数传递的两种方式

    方式一:$0,$1,$2.. 采用$0,$1,$2..等方式获取脚本命令行传入的参数,值得注意的是,$0获取到的是脚本路径以及脚本名,后面按顺序获取参数,当参数超过10个时(包括1
    2020-11-19
  • shell之定时周期性执行脚本的方法示例

    shell之定时周期性执行脚本的方法示例

    示例 1.编写测试脚本脚本 time .sh $ cat time.sh #! /bin/bash echo $(date +%s) >> /home/ocean/out.txt 保存完毕后记得给予权限 chmod 777 test.sh
    2020-11-19
  • Linux 通过 autojump 命令减少 cd 命令的使用的实现方法

    Linux 通过 autojump 命令减少 cd 命令的使用的实现方法

    Linux - 通过 autojump 命令减少 cd 命令的使用 1、安装 autojump git clone git://github.com/joelthelion/autojump.git 安装 cd autojump ./install.py 卸载
    2020-11-19
  • shell字符串截取报错:Bad substitution的解决

    shell字符串截取报错:Bad substitution的解决

    问题重现: 当前系统Ubuntu16 shell进行字符串截取 运行 ${GIT_COMMIT:0:6}报错: /tmp/jenkins7505855461406722507.sh: 4: /tmp/jenkins7505855461406722507.s
    2020-11-19
  • shell 判断字符串是否存在数组中的实现示例

    shell 判断字符串是否存在数组中的实现示例

    语法格式: [[ "${array[@]}" =~ "字符串" ]] 示例: #!/bin/sh ##数组 array=( address base cart company store ) # $1 如果存在,输出 $1 exists,$1 如
    2020-11-19
  • 详解shell 函数定义与调用

    详解shell 函数定义与调用

    一、Shell函数定义格式 shell函数定义格式,各部分说明如下: [ function ]等中括号括起来部分----表示可选(即可有可无) your_function_name部分----为函数名 you
    2020-11-19
  • shell中set指令的用法详解

    shell中set指令的用法详解

    语法 set [-可选参数] [-o 选项] 功能说明 set 指令可根据不同的需求来设置当前所使用 shell 的执行方式,同时也可以用来设置或显示 shell 变量的值。当指定某
    2020-11-19
  • linux自动化交互脚本expect详解

    linux自动化交互脚本expect详解

    一、介绍 expect脚本是Tcl脚本语言的拓展。用来实现自动的交互式任务,无需人为干预。在实际开发中,运行shell脚本有时候会输入linux密码或者是mysql密码等,而expe
    2020-11-19

最新评论