shell script针对参数已经有配置好变量名称

/path/to/scriptname  opt1  opt2  opt3  opt4
       $0             $1    $2    $3    $4

这样够清楚了吧?运行的脚本档名为 $0 这个变量,第一个接的参数就是 $1 啊~ 所以,只要我们在 script 里面善用 $1 的话,就可以很简单的立即下达某些命令功能了!除了这些数字的变量之外, 我们还有一些较为特殊的变量可以在 script 内使用来呼叫这些参数喔!

  • $# :代表后接的参数『个数』,以上表为例这里显示为『 4 』;
  • [email protected] :代表『 "$1" "$2" "$3" "$4" 』之意,每个变量是独立的(用双引号括起来);
  • $* :代表『 "$1c$2c$3c$4" 』,其中 c 为分隔字节,默认为空白键, 所以本例中代表『 "$1 $2 $3 $4" 』之意。

那个 [email protected] 与 $* 基本上还是有所不同啦!不过,一般使用情况下可以直接记忆 [email protected] 即可! 好了,来做个例子吧~假设我要运行一个可以携带参数的 script ,运行该脚本后萤幕会显示如下的数据:

  • 程序的档名为何?
  • 共有几个参数?
  • 若参数的个数小於 2 则告知使用者参数数量太少
  • 全部的参数内容为何?
  • 第一个参数为何?
  • 第二个参数为何

脚本名称 sh04.sh

#!/bin/bash
# Program:
#       Program shows the sripts name, parameters...
# History:
# 2015/9/6      zengdp  First release
PATH=/bin:/sbin/:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH

echo "The script name is          ==> $0"
echo "Total parameter number is   ==> $#"
[ "$#" -lt 2 ] && acho "The number of parameter is less than 2. Stop here." && exit 0
echo "You whole parameter is      ==>‘[email protected]‘"
echo "The 1st parameter           ==> $1"
echo "The 2nd parameter           ==> $2"

输入命令 sh sh04.sh the one haha quot

脚本运行后输出:

The script name is          ==> sh06.sh
Total parameter number is   ==> 4
You whole parameter is      ==>‘the one haha quot‘
The 1st parameter           ==> the
The 2nd parameter           ==> one
时间: 2024-10-26 02:17:35

shell script针对参数已经有配置好变量名称的相关文章

shell编程 Shell script 的默认变量($0, $1...)

Shell script 的默认变量($0, $1...) 我们知道指令可以带有选项与参数,例如 ls -la 可以察看包含隐藏文件的所有属性与权限.那么 shell script 能不能在脚本文件名后面带有参数呢?很有趣喔!举例来说,如果你想要重新启动系统登录文件的功能,可以这样做: [[email protected] ~]# file /etc/init.d/syslog /etc/init.d/syslog: Bourne-Again shell script text executab

vim编辑器简介;shell脚本的参数;yum仓库配置

1. vim编辑器 命令模式:dd:删除(剪切)光标所在整行:ndd:删除(剪切)光标处开始的n行:yy:复制光标所在整行:nyy:复制从光标开始处的n行:u:撤销上一步的操作:p:将之前删除(dd)或复制(yy)过的数据粘贴到光标后面:输入模式:进入:a或i或o:a:在光标后面以为切换到输入模式:i:在光标当前位置切换到输入模式:o:在光标的下面再创建一个空行:退出到命令模式:Esc键':'或末行模式::w 保存:q 退出:wq! 强制保存退出:q! 强制退出(放弃对文档的修改):set nu

一个修改配置文件的linux shell script

不久以前,曾经搜到一篇博客是读取配置文件的,http://www.cnblogs.com/bo083/archive/2012/11/19/2777076.html,用到现在,感觉十分方便,感谢作者. 现在,需要通过web界面给用户留出接口来修改类似配置文件,大的方法是从php调用linux shell script,于是,现在贴一个可以修改此种配置文件的linux shell. 首先,配置文件的格式如下: [unit1] field1=value1 field2=value2 [unit2]

bash shell学习-shell script基础 (笔记)

A chain no stronger than its weakest link. "一着不慎,满盘皆输" 参考资料:鸟哥的Linux私房菜 基础学习篇(第三版)  Linux Shell脚本攻略     Linux程序设计(第四版) 一.什么是shell script 1.什么是shell script 简单来说,shell script(程序化脚本)是利用shell功能所写的一个“程序”,它拥有自己的语法特性 2.为什么要学shell script 对于一个初学者来说,我觉得就那

[转]php-fpm - 启动参数及重要配置详解

约定几个目录/usr/local/php/sbin/php-fpm/usr/local/php/etc/php-fpm.conf/usr/local/php/etc/php.ini 一,php-fpm的启动参数 #测试php-fpm配置 /usr/local/php/sbin/php-fpm -t /usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf -t #启动p

跟鸟哥学Linux之——shell script

从程序员的角度来看,Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁.用户既可以输入命令执行,又可以利用 Shell脚本编程,完成更加复杂的操作.在系统管理等领域,Shell编程起着不可忽视的作用.前期我对shell编程做了一个初步的认识,现总结如下: 思维导图: 知识分为了两部分: 基本知识: 在基本知识中我将其分为了:执行方法.运算式.变量和判断式四部分.1.执行方法就是在Linux中shell文件执行的命令,用的多了自然会没有问题.2

Linux08--Shell程序设计03 shell script

第一个Shell脚本——HelloWorld [[email protected] ~]# vi sh01.sh #!/bin/bash #!表明使用哪种shell # this is my first shell script #注释部分 echo -e "hello world!" exit 0 [[email protected]~]# sh sh01.sh #使用bash或者sh命令执行sh文件 hello world! 第二个Shell脚本——从终端接收用户输入到变量中 第三

第十三章、学习 Shell Scripts 简单的 shell script 练习

简单的 shell script 练习 简单范例 对谈式脚本:变量内容由使用者决定 [[email protected] scripts]# vi sh02.sh #!/bin/bash # Program: # User inputs his first name and last name. Program shows his full name. # History: # 2005/08/23 VBird First release PATH=/bin:/sbin:/usr/bin:/us

Shell Script 中 "$()" ," ${}" Learning

shell中$(( )) 与 $( ) 还有${ }的区别 http://blog.chinaunix.net/uid-14351756-id-2820651.html $( ) 与 ` ` (反引号) 在 bash shell 中,$( ) 与 ` ` (反引号) 都是用来做命令替换用(command substitution)的. 所谓的命令替换与我们第五章学过的变量替换差不多,都是用来重组命令行: * 完成引号里的命令行,然后将其结果替换出来,再重组命令行. 例如: [code]$ ech