欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

shell编程-参数传递

程序员文章站 2022-06-04 08:51:34
...

一、传参介绍

(1)C语言中可以通过main函数的argc和argv给程序传参

(2)shell程序本身也可以在调用时传参给他。在shell程序内部使用传参也是使用的一些特定符号来表示的,包括:

$#表示调用该shell时传参的个数。($#计数时只考虑真正的参数个数)

$0、$1、$2·····则依次表示传参的各个参数。如果参数超过9个,那么就只能通过${}来获取了, 例如获取第10个参数,那么可以写为${10}。

二、编程实例

实例1:

#!/bin/bash
#testinput.sh
echo "file name: $0"
echo "base file name: $(basename $0)"
echo "param1: $1"
echo "param2: ${2}"

运行上面的的shell

./testinput.sh 12 34

输出结果;

file name: ./testinput.sh

base file name: testinput.sh

param1: 12

param2: 34

成功的得到文件名和命令行输入的参数(命令行参数以空格分隔,如果参数包含了空格,那么久必须添加引号了)

$0默认会获取到当前shell文件的名称,但是,它也包含(./),如果你以完整路径运行,那么这还会包含目录名。因此,上面通过basename命令来获取单纯的文件名$(basename $0)。

实例2:获取用户的所有参数

见以下博客:https://www.cnblogs.com/dongying/p/6398570.html

相关标签: ARM