美文网首页
linux bash 变量

linux bash 变量

作者: Dylan_abaa | 来源:发表于2020-06-20 21:26 被阅读0次

变量定义

如果 variable 是一个变量的名字,那么 $variable 就是引用这个变量的值,即这变量所包含的数据。

$variable 事实上只是 ${variable} 的简写形式。在某些上下文中 $variable 可能会引起错误,这时候你就需要用 ${variable} 了。

定义变量时,变量名不加美元符号($,PHP语言中变量需要),如: myname="shiyanlou"

注意

变量名和等号之间不能有空格。同时,变量名的命名须遵循如下规则:

首个字符必须为字母(a-z,A-Z)。

中间不能有空格,可以使用下划线(_)。

不能使用标点符号。

不能使用bash里的关键字(可用help命令查看保留关键字)。

除了直接赋值,还可以用语句给变量赋值,如:for file in `ls /etc`

局部变量和环境变量:

1.局部变量

这种变量只有在代码块或者函数中才可见。后面的实验会详细讲解。

2.环境变量

这种变量将影响用户接口和 shell 的行为。

在通常情况下,每个进程都有自己的“环境”,这个环境是由一组变量组成的,这些变量中存有进程可能需要引用的信息。在这种情况下,shell 与一个一般的进程没什么区别。

3.位置参数

从命令行传递到脚本的参数:0,0,1,2,2,3...

0就是脚本文件自身的名字,0就是脚本文件自身的名字,1 是第一个参数,2 是第二个参数,2是第二个参数,3 是第三个参数,然后是第四个。9 之后的位置参数就必须用大括号括起来了,比如,9之后的位置参数就必须用大括号括起来了,比如,{10},{11},11,{12}。

$# : 传递到脚本的参数个数

$* : 以一个单字符串显示所有向脚本传递的参数。与位置变量不同,此选项参数可超过 9个

$$ : 脚本运行的当前进程 ID号

$! : 后台运行的最后一个进程的进程 ID号

$@ : 与$*相同,但是使用时加引号,并在引号中返回每个参数

$: 显示shell使用的当前选项,与 set命令功能相同

$? : 显示最后命令的退出状态。 0表示没有错误,其他任何值表明有错误。

#!/bin/bash# 作为用例, 调用这个脚本至少需要10个参数, 

比如:# bash test.sh 1 2 3 4 5 6 7 8 9 10

MINPARAMS=10

echo

echo "The name of this script is \"$0\"."

echo "The name of this script is \"`basename$0`\"."

echo

if [ -n "$1" ] # 测试变量被引用.

    then

    echo "Parameter #1 is$1" # 需要引用才能够转义"#"

fi 

if [ -n "$2" ]

    then

    echo "Parameter #2 is$2"

fi 

if [ -n "${10}" ] # 大于$9的参数必须用{}括起来.

    then

    echo "Parameter #10 is${10}"

fi 

echo "-----------------------------------"

echo "All the command-line parameters are: "$*""

if [ $# -lt "$MINPARAMS" ]

    then 

    echo 

    echo "This script needs at least$MINPARAMScommand-line arguments!"

fi 

echo

exit 0

运行:

$ bash test30.sh 1 2 10

相关文章

  • linux bash 变量

    变量定义 如果 variable 是一个变量的名字,那么 $variable 就是引用这个变量的值,即这变量所包含...

  • linux环境变量

    linux登陆环境变量初始化顺序 /etc/profile-->/.bash_profile-->/.bash_l...

  • Linux常用操作(SSH连接、环境变量、文件权限、Vim、ta

    SSH连接 环境变量 profile、bashrc、bash_profile 在Linux中配置环境变量,可以但不...

  • linux-bash变量

    shell编程shell主要用来简化管理操作bash变量1.什么是变量变量是计算机内存的单元,其中存放的值可以改变...

  • virtualenv

    1、安装 2、配置 2.1 Linux/Mac OSX 下: 修改~/.bash_profile或其它环境变量相关...

  • Mac终端技巧

    mac command alias mac环境变量配置在~/.bash_profile文件里(相当于linux的~...

  • bash脚本编程-变量,变量类型

    bash变量类型: 环境变量,本地变量,位置变量,特殊变量。 本地变量: bash: VARNAME=value ...

  • Shell进阶脚本-内部变量

    内建变量 影响 Bash 脚本行为的变量 $BASH Bash程序的路径 $BASH_ENV 这个环境变量会指向一...

  • 理解Linux bash 和shell

    今天在看到linux环境变量的这部分时,突然明白了linux的bash 和shell的含义。还是来看命令: 启动一...

  • Mac电脑配置全局环境变量

    在Linux系统中,全局环境变量都放在 /etc/profile。在OSX中,则放在~/.bash_profile...

网友评论

      本文标题:linux bash 变量

      本文链接:https://www.haomeiwen.com/subject/ocggxktx.html