美文网首页
shell变量

shell变量

作者: come_on | 来源:发表于2018-08-27 18:30 被阅读17次
!/bin/bash\
echo "Helllo World !"
echo "what is your name?"
read PERSON
echo "hello,$PERSON"

使用 read 命令从 stdin 获取输入并赋值给 PERSON 变量,最后在 stdout 上输出

url=http://www.baidu.com
echo $url
name='C语言智能'
echo $name 

使用一个定义过的变量,只要在变量名前面加美元符号$即可

echo "I am good at ${name}skill" 

变量名外面的花括号{ }是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界,推荐给所有变量加上花括号{ },这是个良好的编程习惯。

name="C语言智能model"
echo ${name}
website1='百度:${url}'  

以单引号' '包围变量的值时,单引号里面是什么就输出什么,即使内容中有变量和命令(命令需要反引起来)也会把它们原样输出。这种方式比较适合定义显示纯字符串的情况,即不希望解析变量、命令等的场景

website2="百度:${url}"  
以双引号" "包围变量的值时,输出时会先解析里面的变量和命令,而不是把双引号中的变量名和命令原样输出。这种方式比较适合字符串中附带有变量和命令并且想将其解析后再输出的变量定义。
echo $website1
echo $website2

Shell 也支持将命令的执行结果赋值给变量,常见的有以下两种方式:第一种方式把命令用反引号包围起来,反引号和单引号非常相似,容易产生混淆,所以不推荐使用这种方式;第二种方式把命令用$()包围起来,区分更加明显,所以推荐使用这种方式。

log=$(cat log.txt)
echo $log

log=`cat log.txt`
echo $log

myUrl="www.qq.com"
readonly myUrl      #使用readonly命令可以将变量定义为制度变量,制度变量的值不能被改变
myUrl="www.alibaba.com"


myUrl2="www.163.com"
unset myUrl2
echo $myUrl2    #使用unset命令可以删除变量,变量被删除后不能再次使用;unset命令不能删除只读变量

变量类型

运行shell时,会同事存在三种变量:

1、局部变量---局部变量在脚本或命令中定义,仅在当前shell实力中有效,其他shell启动的程序不能访问局部变量

2、环境变量---所有程序,包括shell启动的程序,都能访问环境变量。有些程序需要环境变量来保证其正常运行。必要的时候shell脚本也可以定义环境变量。

3、shell变量---shell变量是由shell程序设置的特殊变量。shell变量中有一部分是环境变量,有一部分是局部变量,这些变量保证了shell的正常运行。

相关文章

  • shell基础在工作中的应用

    shell编程基础:1. shell变量:环境变量、特殊变量、用户自定义变量2. shell输入输出3 shell...

  • Linux Shell:基础知识和Shell变量

    摘要:Linux,Shell 整理Shell内容要点: Shell基础知识 Shell变量的类型 Shell变量赋...

  • Shell常用命令(md格式方便阅读和复制粘贴)

    Shell Shell中的变量 系统变量 自定义变量 自定义变量规则 Shell特殊变量 运算符 条件判断 基本语...

  • shell第11章shell脚本

    什么是shell? Bash shell: 什么是shell脚本? 变量的介绍: 普通变量介绍: 环境变量介绍: ...

  • shell变量详解

    本文转载自Hello,Barry的shell变量详解1 shell变量基础shell变量是一种很“弱”的变量,默认...

  • linux shell中常见的变量含义解释

    linux shell中常见变量含义解释:变量说明:$$Shell本身的PID(ProcessID)$!Shell...

  • Shell特殊变量

    Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数 特殊变量列表 变量 含...

  • Shell变量

    Shell 变量 变量的分类 本地变量 全局变量 shell 内置变量 本地变量 本地变量就是:在当前系统的某个环...

  • bash环境变量

    环境变量是全局变量 自定义变量是局部变量 bash:可以进入当前shell的子shell(当前shell指的是当前...

  • shell

    shell变量 变量类型:局部变量局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程...

网友评论

      本文标题:shell变量

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