文档章节

Bash脚本输入参数的使用

陶小陶
 陶小陶
发布于 09/26 12:37
字数 425
阅读 13
收藏 0

Bash脚本输入参数的使用

Bash脚本传入的参数,在脚本中以位置的形式进行访问,即 $n 。例如,$1 为执行脚本的第一个参数,$2 为执行脚本的第二个参数。另外Bash中还提供了一些其它的便捷操作以符号的形式表现。具体内容和含义见下表:

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

事例代码如下:

# !/usr/bin/env bash
# -*- coding: utf-8 -*-
#
# 打印输入的参数
#

if [[ $#<=0 ]]; then
	echo "command=>$0, no parameters"
	exit 1
fi

echo $@

pos=1
for para in "$@"; do
	eval val=$(echo \$${pos})
	echo "command=>$0, position=>${pos}, value=>${val}"
	echo $(( pos++ )) >/dev/null
done

上述代码执行结果如下: bash参数打印测试结果

© 著作权归作者所有

共有 人打赏支持
陶小陶
粉丝 1
博文 29
码字总数 42009
作品 0
深圳
程序员
Linux0基础深度解析shell简介01

一、shell简介 ------------ 用户 | 终端 (相当于bash的接口) | shell(壳) bash 大多数Linux系统默认的shell环境 | 内核 用户通过终端输入命令,提交给shell,再调用内核中的系统功能对命...

木玛by
2017/11/17
0
0
Linux shell 程序设计1——安装及入门

1、什么是shell? shell是linux内核的“壳”,是用户和内核的桥梁。它类似于windows下的命令提示符,将用户输入的命令解释给内核执行,并返回给用户结果。与windows命令提示符不同的是,she...

宅蓝三木
2014/04/24
0
0
认识bash 这个Shell

Shell :将我们输入的命令与内核通信,好让内核可以控制硬件来正确无误的工作。 Shell 本身是一个用C语言编写的程序,用户的大部分工作都是通过Shell来完成的。 Shell的功能只是提供用户操作...

Tanswer_
2016/06/06
0
0
linux read 用法

linux read 用法 1、基本读取 read命令接收标准输入(键盘)的输入,或其他文件描述符的输入(后面在说)。得到输入后,read命令将数据放入一个标准变量中。下面是 read命令 的最简单形式:: ...

Oscarfff
2016/04/06
8
0
Shell 快速指南

Shell 快速指南 概述 什么是 shell Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。 Shell 既是一种命令语言,又是一种程序设计语言。 Shell 是指一种应用程序,这个应用程序...

静默虚空
2017/11/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

CentOS7防火墙firewalld操作

firewalld Linux上新用的防火墙软件,跟iptables差不多的工具。 firewall-cmd 是 firewalld 的字符界面管理工具,firewalld是CentOS7的一大特性,最大的好处有两个:支持动态更新,不用重启服...

dingdayu
58分钟前
1
0
关于组件化的最初步

一个工程可能会有多个版本,有国际版、国内版、还有针对各种不同的渠道化的打包版本、这个属于我们日常经常见到的打包差异化版本需求。 而对于工程的开发,比如以前的公司,分成了有三大块业...

DannyCoder
今天
2
0
Spring的Resttemplate发送带header的post请求

private HttpHeaders getJsonHeader() { HttpHeaders headers = new HttpHeaders(); MediaType type = MediaType.parseMediaType("application/json; charset=UTF-8"); ......

qiang123
昨天
3
0
Spring Cloud Gateway 之 Only one connection receive subscriber allowed

都说Spring Cloud Gateway好,我也来试试,可是配置了总是报下面这个错误: java.lang.IllegalStateException: Only one connection receive subscriber allowed. 困扰了我几天的问题,原来...

ThinkGem
昨天
26
0
学习设计模式——观察者模式

1. 认识观察者模式 1. 定义:定义对象之间一种一对多的依赖关系,当一个对象状态发生变化时,依赖该对象的其他对象都会得到通知并进行相应的变化。 2. 组织结构: Subject:目标对象类,会被...

江左煤郎
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部