Linux变量】的更多相关文章

前一段时间学习了一下linux的变量,现在总结有3点需要特别注意: linux变量和C/C++变量的区别 linux变量的引用 linux变量特有的命令替换 先说第一点,linux变量更像是宏定义,只是可以变换指代内容.也就是说,在C/C++中,变量是只能赋值成不同类型的数据,例如int, char, ptr.但是在linux中,变量是可以赋值成任意形式的内容,比如字符串,针对这点来说,它更像是C/C++中的宏定义. 由于变量包含的内容不同,linux和C/C++的变量引用自然不同.linux中…
Linux变量之$#, $*, $@含义 一.介绍 $# //是传给脚本的参数个数 $ //是脚本本身的名字 $1 //是传递给该shell脚本的第一个参数 $ //是传递给该shell脚本的第二个参数 $@ //是传给脚本的所有参数的列表 $* //是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个 $$ //是脚本运行的当前进程ID号 $? //是显示最后命令的退出状态,0表示没有错误,其他表示有错误 $! //Shell最后运行的后台Process的PID ‘@’ 和…
变量赋值:var=var_value 变量引用:$var 算术运算:var=`expr $var1 + $var2` 字符串连接:var=str$var1 数值比较:-eq/-ne/-gt/-lt/-ge/-le/==/!= 字符串比较:=/!=/-z/-n/str/=~ 文件测试:-e/-r/-w/-x/-s/-d/-f/-c/-b 说明: 1.赋值运算符两边要没空格,比较运算符两边要有空格. 2.Linux中变量不区分数值数型和字符串类型,当变量值为纯数时可当数值类型用也可当字符串类型用.…
目录 1. Shell 脚本规范 2. Shell 脚本执行 3. Shell 脚本变量 3.1 环境变量 3.1.1 自定义环境变量 3.1.2 显示与取消环境变量 3.1.3 环境变量初始化与对应文件的生效顺序 3.2 普通变量 3.2.1 定义本地变量 3.2.2 shell 调用变量 3.2.3 grep 调用变量 3.2.4 awk 调用变量 3.3 特殊变量 3.4 变量子串 4. Shell 运算符 x.-系统变量列表 1. Shell 脚本规范 一个规范的 Shell 脚本在第一…
变量是一个很重要的概念,无论是bash脚本还是其他语言,都是如此.在bash中,创建变量很简单,给变量一个名称即可.默认情况下,变量的值为空.我们可以通过等号为变量赋值.需要注意的是,变量和变量的值不是一个概念.当给定变量一个名称后,例如myvar,我们需要通过$取得变量的值,即$myvar.使用echo输出变量的值. 输出变量的值的格式为:echo $myvar 或者 echo ${myvar} 使用变量的时候,需要注意以下几点: 1. 给变量赋值的时候,如果值包含空格,需要用单引号或者双引号…
[参考文章]:linux中shell变量$#,$@,$0,$1,$2的含义解释 1. 变量说明 1.1 $$ Shell本身的PID(ProcessID) 1.2 $! Shell最后运行的后台Process的PID 1.3 $? 最后运行的命令的结束代码(返回值) 成功时返回 0,失败时返回 1 或者其他. 可以用来判断脚本中命令的执行结果以决定是否要进行下一步或者退出. 1.4 $- 使用Set命令设定的Flag一览 1.5 $* 所有参数列表.如"$*"用「"」括起来的…
printenv - print all or part of environment 显示所有变量:print 显示某个变量:print <variable name> 或者 echo $<variable name> env --- 显示/设置当前用户变量 用户变量存在于所有的shell中,与用什么shell无关,比如:HOME,SHELL等. set --- 显示/设置当前shell变量(包含用户变量) 不同的shell有着不同的私有变量,在shell中也可以临时定义私有变量…
变量:(大的分为环境变量与本的变量) 本地变量: 本地变量在用户现在的shell生命期的脚本中使用.例如,本地变量file-name="loop.doc",这个值只在用户当前shell生命期有意义.如果在shell中启动另一个进程或退出,此值将无效.这个方法的优点就是用户不能对其他的shell或进程设置此变量有效.即只在当前shell中定义的变量.shell变量:定制用户本身的工作环境.使用变量可以保存有用信息,使系统获知用户相关设置.如:EDITOR之类在.profile中定义的变量…
变量内容的删除与取代 范例一:先让小写的 path 自定义变量配置的与 PATH 内容相同 [root@www ~]# path=${PATH} [root@www ~]# echo $path /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin: /usr/sbin:/usr/bin:/root/bin <==这两行其实是同一行啦! 范例二:假设我不喜欢 kerberos,所以要将前两个目…
[root@www ~]# read [-pt] variable 选项与参数: -p :后面可以接提示字符! -t :后面可以接等待的『秒数!』这个比较有趣-不会一直等待使用者啦! 范例一:让用户由键盘输入一内容,将该内容变成名为 atest 的变量 [root@www ~]# read atest This is a test <==此时光标会等待你输入!请输入左侧文字看看 [root@www ~]# echo $atest This is a test <==你刚刚输入的数据已经变成一个…
printenv - print all or part of environment 显示所有变量:print 显示某个变量:print <variable name> 或者 echo $<variable name> env --- 显示/设置当前用户变量 用户变量存在于所有的shell中,与用什么shell无关,比如:HOME,SHELL等. set --- 显示/设置当前shell变量(包含用户变量) 不同的shell有着不同的私有变量,在shell中也可以临时定义私有变量…
本地变量:用户自定义的变量. 环境变量:用于所有用户变量,用于用户进程前,必须用export命令导出. 位置变量:$0(脚本名),$1-$9:脚本参数. 特定变量:脚本运行时的一些相关信息. $# 传递到脚本的参数个数$* 传递到脚本的参数,与位置变量不同,此选项参数可超过9个$$ 脚本运行时当前进程的ID号,常用作临时变量的后缀,如haison.$$$! 后台运行的(&)最后一个进程的ID号$@ 与$#相同,使用时加引号,并在引号中返回参数个数$- 上一个命令的最后一个参数$? 最后命令的退出…
[root@localhost log]# var=/dir1/dir2/file.txt 1.对变量取值 [root@localhost log]# echo ${var} /dir1/dir2/file.txt 2.求字符串的长度 [root@localhost log]# echo ${#var} 19 3.提取位置3到最后的字符 [root@localhost log]# echo ${var:3} r1/dir2/file.txt 4.从位置3,开始提取5个字符 [root@local…
1.变量引用 name=Andy echo $name 或 echo ${name} 2.命令替换 把命令的执行结果赋值给变量,使用倒引号或者$() APP_HOME=`pwd` 或 APP_HOME=$(pwd) 注意:bash 与makefile的语法不一样,在makefile中,变量引用使用 ${} 或者$()…
变量内容的删除与代替 范例一:先让小写的 path 自己定义变量配置的与 PATH 内容同样 [root@www ~]# path=${PATH} [root@www ~]# echo $path /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin: /usr/sbin:/usr/bin:/root/bin <==这两行事实上是同一行啦! 范例二:如果我不喜欢 kerberos,所以要将前两…
1.1.1   ${value:-word} 如果变量value没有定义,则返回word,如果已经赋值则返回value变量的值 result=${jimyy:-UNSET} echo $result 由于jimyy没有定义,因此返回UNSET 这种变量功能判断变量在没有定义时,确保变量始终有一个返回值. 1.1.2   ${value:=word} 当value没有定义时,则把word赋给value,然后通过${value:=word} 值把vaule值打印出来. result=${jimyy:…
变量 赋值 variable=0,访问 $var或${var} 参数 $n 用``引住的会先执行(~键) 位置参数 环境变量/etc/profile:全局的环境变量 . bash_profile:用户的环境变量,在哪个用户的home下,就对哪个用户生效~/ .bashrc:用户的环境变量,在哪个用户的home下,就对哪个用户生效export:导出变量,即用户在外面使用source:修改环境变量后让变量文件生效 添加a到环境变量 也可以export其他的变量 在脚本中使用环境变量 管道 | 管道操…
链接来自他们分享,,,, 如有侵权,请联系本人删除,本人将立即删除.停止分享. https://blog.csdn.net/fengzijinliang/article/details/42520211…
写一个简单的脚本 vim var 脚本内容如下: #!/bin/sh echo "the number of parameters passed to the script: $#" echo "the name of the script itself: $0" echo "the first parameter passed to the shell script: $1" echo "the second parameter pa…
一.Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1.永久的:需要修改配置文件,变量永久生效. 2.临时的:使用export命令声明即可,变量在关闭shell时失效. 二.设置变量的三种方法 1.在/etc/profile文件中添加变量[对所有用户生效(永久的)] 用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”. 例如:编辑/etc/profile文件,添加CLASSPATH变量 # vi /etc/prof…
1. 显示环境变量HOME $ echo $HOME /home/redbooks 2. 设置一个新的环境变量hello $ export HELLO="Hello!" $ echo $HELLO Hello! 3. 使用env命令显示所有的环境变量 $ env HOSTNAME=redbooks.safe.org PVM_RSH=/usr/bin/rsh Shell=/bin/bash TERM=xterm HISTSIZE=1000 ... 4. 使用set命令显示所有本地定义的S…
1.总结背景 在linux系统下,如果你下载并安装了应用程序,很有可能在键入它的名称时出现“command not found”的提示内容.如果每次都到安装目标文件夹内,找到可执行文件来进行操作就太繁琐了. 这涉及到环境变量PATH的设置问题,而PATH的设置也是在linux下定制环境变量的一个组成部分. 2.变量简介 Linux是一个多用户的操作系统.每个用户登录系统后,都会有一个专用的运行环境.通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义.用户可以对自己的运行环…
1. 显示环境变量HOME $ echo $HOME /home/redbooks 2. 设置一个新的环境变量hello $ export HELLO="Hello!" $ echo $HELLO Hello! 3. 使用env命令显示所有的环境变量 $ env HOSTNAME=redbooks.safe.org PVM_RSH=/usr/bin/rsh Shell=/bin/bash TERM=xterm HISTSIZE=1000 ... 4. 使用set命令显示所有本地定义的S…
Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1 永久的:需要修改配置文件,变量永久生效. 2 临时的:使用export命令声明即可,变量在关闭shell时失效. 按作用范围来划分,包括系统级和用户级: 系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的环境变量. 1.系统级:(1)/etc/profile:该文件是用户登录时,操作系统定制用户环境时使用的第一个文件,应用于登录到系统的每一个用户.该文件一般是调用/e…
本文转自:http://blog.sina.com.cn/s/blog_8e21864f01014u9h.html Linux修改环境变量,很简单但很重要 一.Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1. 永久的:需要修改配置文件,变量永久生效. 2. 临时的:使用export命令行声明即可,变量在关闭shell时失效. 二.设置变量的三种方法 1. 在/etc/profile文件中添加变量[对所有用户生效(永久的)] 用VI在文件/etc/profile文件中…
1.    显示环境变量HOME $ echo $HOME /home/redbooks 2.    设置一个新的环境变量hello $ export HELLO="Hello!" $ echo $HELLO Hello! 3. 使用env命令显示所有的环境变量 $ env HOSTNAME=redbooks.safe.org PVM_RSH=/usr/bin/rsh Shell=/bin/bash TERM=xterm HISTSIZE=1000 ... 4. 使用set命令显示所有…
Linux修改环境变量,很简单但很重要 一.Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1. 永久的:需要修改配置文件,变量永久生效. 2. 临时的:使用export命令行声明即可,变量在关闭shell时失效. 二.设置变量的三种方法 1. 在/etc/profile文件中添加变量[对所有用户生效(永久的)] 用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”. 例如:编辑/etc/profile文件,添加CL…
1. 显示环境变量HOME $ echo $HOME /home/redbooks 2. 设置一个新的环境变量hello $ export HELLO="Hello!" $ echo $HELLO Hello! 3. 使用env命令显示所有的环境变量 $ env HOSTNAME=redbooks.safe.org PVM_RSH=/usr/bin/rsh Shell=/bin/bash TERM=xterm HISTSIZE= ... 4. 使用set命令显示所有本地定义的Shell…
1. getenv() putenv()setenv()函数介绍 getenv(取得环境变量内容) 相关函数 putenv,setenv,unsetenv 表头文件 #include<stdlib.h> 定义函数 char * getenv(const char *name); 函数说明 getenv()用来取得参数name环境变量的内容.参数name为环境变量的名称,如果该变量存在则会返回指向该内容的指针.环境变量的格式为name=value. 返回值 执行成功则返回指向该内容的指针,找不到…
source/etc/profile是让/etc/profile文件修改后立即生效, 还有一种方法是:. /etc/profile 注意:.和/etc/profile有空格 linux中source命令 source命令也称为"点命令"也就是一个符号(.).source命令通常用于重新执行刚修改的初始或文件,使之立即生效,而不必注销并重新登录. 一.Linux的变量种类按变量的生存周期来划分,Linux变量可分为两类:1. 永久的:需要修改配置文件,变量永久生效.2. 临时的:使用ex…