shell-特殊变量

  1. 位置变量。

    $0 获取当前执行的shell脚本的文件名。如图:

    [[email protected] ~]# vim 0.sh

    [[email protected] ~]# cat 0.sh

    echo $0

    [[email protected] ~]# sh 0.sh

    0.sh

    [[email protected] ~]#

  2. 如果我把它的完全路径输入的话就会这样,如图:

[[email protected] ~]# sh /root/0.sh

/root/0.sh

$1一直到$10是代表对应的第几个变量,如$1是对应的第一个变量的值,如果是$10的话,要把10用{}括号括号起来,如${10}

如图:

[[email protected] ~]# sh 0.sh zhouyu

zhouyu

顺便说一下,seq是发送从哪个值到哪个值,如命令

seq -s " " 1 10

是说发送1到10用空格分隔出来,如图:

[[email protected] ~]# seq -s " $" 1 10

1 $2 $3 $4 $5 $6 $7 $8 $9 $10

$#是指命令行参数的总个数。如果给你命令行的参数有10个那么$#就是10

dirname $0是把脚本的目录取出来

basename $0是把名称取出来。

如图:

[[email protected] ~]# cat 0.sh

dirname $0

basename $0

[[email protected] ~]# sh /root/0.sh

/root

0.sh

[[email protected] ~]#

可以去看看/etc/init.d/nfs文件对于这些参数的用法。

时间: 2024-11-13 16:31:14

shell-特殊变量的相关文章

shell编程变量及变量类型

编程语言:包括机器语言.汇编语言.{高级语言[静态语言(编译型语言,一般为强类型变量,需要发布为可执行程序,C.C++.Java,C#)和动态语言(解释型语言,一般为弱类型语言,不需要发布为可执行程序,是一边执行一边解释,Asp,asp.net,php,shell,python.perl)]} 面向对象:解决对象之间的动作,主要适合开发大型程序java,python,c++,perl 面向过程:主要解决过程,主要适合开发小型程序shell,c 变量:是内存空间,是命名的内存空间,存储数据的存储格

shell中变量的使用(2)

shell中变量的几点知识: 变量: 1.在默认情况下,所有的变量都被看做字符串来存储的 2.变量区分大小写 3.在变量名前加$来访问内容 4.不需要声明 5.双引号中允许$扩展(用变量的值替换),单引号不行. 示例: s=hello         #(注意等号两边不能有空格) echo $s 环境变量: shell脚本开始执行时,一些变量会根据环境设置中的值进行初始化,这些变量就是环境变量.习惯大写字母. $HOME 当前用户的家目录 $PATH  以冒号分割的用来搜索命令的目录列表 $0 

笔记-Shell特殊变量

位置变量: $0: 获取当前执行shell的文件名称,如果执行脚本带路径那么就包括脚本路径 $n:  获取当前执行的shell脚本的第ng参数值,n=1..9,当n为0时表示脚本的文件名,如果n大于9,大括号括起来${10}. [[email protected] ~]# vim q.sh                     echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13} ${14} ${15} 输出的结果 [[email pr

linux学习之shell脚本 ------- 变量

[本文是自己学习所做笔记,欢迎转载,但请注明出处:http://blog.csdn.net/jesson20121020] 今天来看一下Shell中的一些变量. 变量类型: Shell中有以下几种变量: 1) 本地变量 2) 环境变量 3) 位置变量 4) 标准变量 5) 特殊变量 1) 本地变量 本地变量在用户现在的Shell生命周期的脚本中使用. 用法: variable-name=value set: 可以显示本地所有的变量 注意,本地变量如果加上readonly,则该本地变量不能被修改,

shell之变量

变量赋值 变量的赋值有五种:使用read命令,直接赋值,使用命令行参数,使用命令行的输出结果,从文件读取.1 先说一下从read命令吧:(主要是在需要交互时使用)Read命令是系统内置命令,语法格式为:read 变量1 变量2当Shell脚本执行到read命令时,将暂停脚本的执行并等待键盘的输入,当用户输入完毕并且敲下回车之后,将完成赋值操作,脚本继续执行.Read指令的规则:多个数据或变量之间用空格隔开若变量个数与数据个数相等时,对应取值若变量个数大于数据个数时,没有输入数据的变量取空值若变量

shell自定义变量

一.Shell定义变量需要遵循的规则 Shell编程中,使用变量无需事先声明,同时变量名的命名须遵循如下规则: 首个字符必须为字母(a-z,A-Z) 中间不能有空格,可以使用下划线(_) 不能使用标点符号 不能使用bash里的关键字(可用help命令查看保留关键字) 二.shell变量赋值 需要给变量赋值时,可以这么写:   变量名=值 三.shell变量的引用 要取用一个变量的值,只需在变量名前面加一个$ ( 注意: 给变量赋值的时候,不能在"="两边留空格 ).例如:#!/bin/

shell 将变量当命令执行问题【多条命令同时执行问题】

shell将变量当命令执行问题[多条命令同时执行问题] 今天写了个shell脚本,脚本中需要将变量当做shell命令运行,通常的方法有多种,比如: `${var}` 将变量内容当shell命令行执行 $(${var}) 将变量内容当shell命令执行 ${var}将变量内容当shell命令执行[不推荐此种方法] 但是这3种方法只能运行单条命令,当命令是下面类型时就会有问题: VAR1='cd /home ;echo "hello";echo "good"' VAR2

Bash shell和变量详解

本文的结构:bash shell简介-->变量和变量操作.数组-->bash的环境配置文件分析 什么是shell: 操作系统是一组软件,用于控制整个硬件和管理系统活动,若直接使用操作系统,操作不当会导致系统崩溃,用户不可随意操作,所以通过"shell"将我们输入的命令与内核通信,让内核准确的控制硬件工作 shell是在操作系统上开发的应用程序,是用户可操作的最外层,也就是"shell"壳 什么是bash Bourne Again SHell,Bourne

[shell基础]——变量

变量的赋值 #定义变量,注意等号两边没有任何空格 variable=#定义环境变量export variable= #双引号:可含空格.可转义特殊字符 variable=" " #$() 或 反引号:将命令结果赋值给变量 variable=$( ) variable=` ` #将变量值赋值给变量 gg=$aa$bb 变量的取值 #取值$variable #标准写法,建议使用此方法 ${variable} #示例: #DAY=sunday #echo $DAY sunday # echo

Shell函数,Shell数组,变量替换

定义函数 function 函数名 { 函数的功能体 ...... } 函数名(){ 函数的功能体 ...... } 如何调用函数 函数名 函数的使用规则? 1)先定义后调用,可以只定义不调用 2)定义放上面,调用放下面 3)函数名区分大小写 4)函数名相同,后定义的生效 5)函数名不准使用特殊符号和关健字 6)在函数体内定义的变量叫局部变量,只能在当前函数内使用 7)在函数体外定义的变量叫全局变量 8)在第二个函数里敲上第一个函数的函数名,这样可以调用第一个函数的变量 例 #!/bin/bas