Shell编程 ----- shell变量(Ubuntu)

目录

1.shell变量定义及使用

2.shell中的特殊变量  ----->   位置变量

 3.变量的修饰符

 4.命令置换符

5.Ubuntu的环境变量

方法1:在终端修改环境变量的值

方法2:修改家目录下的 .bashrc 文件

方法3:修改/etc/bash.bashrc

方法4:修改/etc/profile

方法5:修改/etc/environment


1.shell变量定义及使用

1>shell定义变量时,没有数据类型,都当成一个字符串来处理。

不需要指定数据类型

格式:变量名=初始化

2>变量定义规则和C语言类似

3>定义变量时,等号两边不允许有空格

4>定义变量时,初始化字符串中如有空格,必须用""或者''括起来

                str="hello world" str='hello world'

5>如果在字符串中引用变量的值,必须用""括起来

                str=hello

                str1="$str world"

6>变量使用时,使用$str 或者 ${str} 格式

#!/bin/bash 

var1=hello
var2=world
var3=123456
var4=789

var5="hello world"
echo $var5

var6="$var5 world"
echo $var6 

var7='hello $var2'
echo $var7 

echo ${var5}world 

2.shell中的特殊变量  ----->   位置变量

执行脚本文件时,给脚本文件传递参数,脚本文件通过位置变量获取传递的参数

$0        ----------->        脚本文件的名字

$1        ----------->        第一个参数

$2        ----------->        第二个参数

${10}        ----------->        第十个参数

$n       ----------->         第三个参数

$#        ----------->        参数的数量,不包括文件名

$*        ----------->        所有的参数,不包括文件名

#!/bin/bash 

echo $0
echo $1
echo $2
echo $3
echo $4
echo $5
echo $6
echo $7
echo $8
echo $9
echo $10
echo ${10}
echo $#
echo $*

结果为:

 3.变量的修饰符

readonly        -------------->        只读变量

unset        ---------------->        取消变量的定义,不能取消只读变量的定义

local        --------------->        定义局部变量,只能在本函数内使用(shell中默认变量都为全局变         量,及时在函数中)

linux@ubuntu:practice$ readonly str=123456
linux@ubuntu:practice$ echo $str
123456
linux@ubuntu:practice$ str=123
bash: str: 只读变量
linux@ubuntu:practice$ unset str
bash: unset: str: 无法取消设定: 只读 variable
linux@ubuntu:practice$ string=123
linux@ubuntu:practice$ echo $string
123
linux@ubuntu:practice$ string=456
linux@ubuntu:practice$ echo $string
456
linux@ubuntu:practice$ unset string
linux@ubuntu:practice$ 

#!/bin/bash 

var1=123 	#全局变量

func() {
	var2=456  #全局变量 
	local var3=789 			#局部变量
	echo $var3 #会输出
}

#只有调用函数 里边的变量才会定义
func 

echo $var1 
echo $var2 
echo $var3

 结果:var3输出空行

 4.命令置换符

将命令执行的结果赋给一个iang

两种表示方式:

1> `shell命令`  

2> $(shell命令)

5.Ubuntu的环境变量

env        ------------>        查看Ubuntu系统的默认环境变量

LD_LIBRARY_PATH        --------->        链接库的环境变量

自己编写的程序,不用./执行,需要添加当前路径到系统环境变量中

方法1:在终端修改环境变量的值

export PATH=$PATH:可执行文件的路径        (注意:家目录不能写~,要写出完整路径)

注:只在当前终端生效,关闭终端立即失效

方法2:修改家目录下的 .bashrc 文件

在这个文件末尾添加:

export PATH=$PATH:可执行文件的路径

修改后使其生效:source ~/.bashrc        or        重启Ubuntu系统:sudo reboot

注:只在当前用户生效

配置终端显示路径:

将家目录下的.bashrc文件中的

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

                                改为                                        |        

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\W\$ '

方法3:修改/etc/bash.bashrc

在这个文件后面添加一行:

export PATH=$PATH:可执行文件的路径

修改后立即生效:source /etc/bash.bashrc        或者重启Ubuntu

注:对所有用户生效

方法4:修改/etc/profile

在这个文件下面添加一行:

export PATH=$PATH:可执行文件的路径

修改后立即生效:source /etc/profile        或者重启Ubuntu

注:对所有用户生效

方法5:修改/etc/environment

在这个文件PATH变量定义的""内添加可执行文件的路径

注意冒号的添加位置

修改后立即生效:source /etc/environment        或者重启Ubuntu

注:对所有用户生效

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柒丨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值