Linux脚本练习之script030-让所有用户的 `PATH` 环境变量的值多出一个路径,例如: `/usr/local/apache/bin`。

script030

题目

让所有用户的 PATH 环境变量的值多出一个路径,例如: /usr/local/apache/bin

分析

本题考查的知识点:

  • $PATH 环境变量
  • export 命令
  • /etc/profile 文件

思路:

  • 环境变量是保存在 PATH 变量中的,可以通过 echo $PATH 命令查看环境变量的值。
  • 如果要给环境变量添加路径,只需要修改原来的 PATH 变量即可,重新给它赋值。环境变量中的路径是通过冒号 : 进行分隔的,所以拼接时需要将原环境变量与路径用冒号拼接起来重新赋值。
  • 使用 export 命令可以提升变量为全局变量。
  • 但注意只是临时修改了环境变量只会对本次会话有效,如果要永久生效,需要将 export 这句写入到 /etc/profile 文件中

注:关于环境变量可参考:在Linux系统中将指定路径添加到环境变量中

脚本

#!/bin/bash

####################################
#
# 功能:让所有用户的 PATH 环境变量的值多出一个路径,例如: /usr/local/apache/bin
#
# 使用:使用 source 命令执行该脚本才会生效,否则修改的环境变量是子 shell 的
#
####################################


# 变量,待添加到环境变量的路径
DEST_PATH="/usr/local/apache/bin"
# 将目标变量与原环境变量进行拼接修改环境变量,中间用分号进行分隔开,然后使用 export 命令提升到全局变量
export PATH="$PATH:$DEST_PATH"
# 只是临时修改了环境变量只会对本次会话有效,如果要永久生效,需要将 export 这句写入到 /etc/profile 文件中

测试

使用 source script030.sh 调用脚本。因为 ./script030.sh 是在子 shell 中执行,修改的环境变量也是子 shell 的,并不会对当前 shell 的环境变量生效,所以需要使用 source 命令来启动,就会修改当前 shell 的环境变量了。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值