[20140624]显示环境变量PATH.txt

[20140624]显示环境变量PATH.txt

前几天看一台机器,PATH环境变量好长.为了更好的显示,自己随手先了一个shell.

$ echo $PATH | tr ":" "\n"
/u01/app/oracle11g/product/11.2.0/db_2/perl/bin
/usr/java/jdk1.6.0_25/bin
/usr/kerberos/bin
/usr/local/bin
/bin
/usr/bin
/usr/X11R6/bin
/usr/NX/bin
/home/oracle11g/bin
/home/oracle11g/bin
/u01/app/oracle11g/product/11.2.0/db_2/bin

为了以后实用方便,定义一个别名:
alias path='echo $PATH | tr ":" "\n" '

google看一个一些blog,发现一个链接:

http://www.cyberciti.biz/faq/howto-print-path-variable/

function path(){
    old=$IFS
    IFS=:
    printf "%s\n" $PATH
    IFS=$old
}

--感觉这个写很巧妙,重新定义IFS=:,来实现相同的功能.做一个记录.
--另外我看/etc/profile的脚本,里面定义了一个函数:

pathmunge () {
    if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then
       if [ "$2" = "after" ] ; then
          PATH=$PATH:$1
       else
          PATH=$1:$PATH
       fi
    fi
}


--不过最后取消了定义
unset pathmunge

--有了这个加入path很简单,执行例子:
pathmunge /usr/local/sbin

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/267265/viewspace-1192302/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/267265/viewspace-1192302/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 下面是批量添加环境变量到 `PATH` 的 Windows shell 脚本: ``` @echo off setlocal enabledelayedexpansion rem 指定环境变量名称和值的文件路径 set var_file=C:\path\to\var_list.txt rem 读取文件中的环境变量名称和值 for /f "tokens=1,2 delims==" %%i in (%var_file%) do ( set var_name=%%i set var_value=%%j rem 检查环境变量名称是否已经存在 set var_exists=false for /f "tokens=1* delims==" %%k in ('set %var_name%') do ( if "%%k" == "%var_name%" ( set var_exists=true set var_value=%%l rem 将变量值添加到 PATH 中 set "var_value=!var_value!;%var_value%" ) ) rem 如果变量不存在,则新建变量 if not !var_exists! == true setx %var_name% %var_value% ) endlocal ``` 使用方法: - 将上面的脚本保存为 `add_vars_to_path.cmd` 或其他文件名。 - 修改脚本中的 `var_file` 变量,指定一个包含环境变量名称和值的文件的路径。 - 文件中的每一行都应该是这样的格式:`变量名=变量值`。 例如: ``` JAVA_HOME=C:\Program Files\Java\jdk1.8.0_241 ANT_HOME=C:\apache-ant-1.10.9 MAVEN_HOME=C:\apache-maven-3.6.3 ``` - 在命令行中运行脚本: ``` C:\path\to\add_vars_to_path.cmd ``` 这样就可以批量添加环境变量到 `PATH` 中了。 ### 回答2: 你好!以下是一个Windows下批量添加环境变量PATH的shell脚本的示例。 ``` @echo off rem 设置新的环境变量路径 set "newPath=C:\New\Path;C:\Another\Path" rem 获取当前的Path环境变量值 for /f "delims=" %%I in ('echo %PATH%') do set "currentPath=%%I" rem 判断新的路径是否已存在于当前的Path环境变量中 echo %currentPath% | findstr /c:"%newPath%" >nul if %errorlevel% equ 0 ( echo 新的路径已存在于当前的Path环境变量中。 ) else ( rem 将新的路径添加到当前的Path环境变量中 setx PATH "%currentPath%;%newPath%" echo 成功将新的路径添加到Path环境变量中。 rem 重新启动所有已打开的CMD窗口以使更改生效 set "rebootMsg=请重新启动所有已打开的CMD窗口以使更改生效。" ) rem 显示结果消息 echo %rebootMsg% pause ``` 此脚本使用批处理语法,并通过`setx`命令将新的路径添加到Path环境变量中。如果新的路径已存在于当前的Path环境变量中,脚本将显示相应的消息。否则,脚本将添加新的路径并提示重新启动已打开的CMD窗口以使更改生效。 请注意,使用此脚本需要管理员权限。这可以通过以管理员身份运行CMD窗口或将脚本保存为扩展名为`.bat`的文件来实现。 ### 回答3: 在Windows下,我们可以使用批处理脚本(.bat文件)来批量添加环境变量path。以下是一个示例脚本: ``` @echo off set "newPathToAdd=C:\your\new\path" rem 获取当前的path变量值 for /f "delims=" %%i in ('echo %path%') do set "currentPath=%%i" rem 检查newPathToAdd是否已存在于path变量中 echo %currentPath% | find /i "%newPathToAdd%" >nul 2>nul if "%errorlevel%"=="0" ( echo Path already exists in the system! exit /b ) rem 添加新的path到当前path变量值中 set "updatedPath=%currentPath%;%newPathToAdd%" rem 更新系统环境变量中的path值 setx path "%updatedPath%" >nul if "%errorlevel%"=="0" ( echo Path added successfully! ) else ( echo Failed to add path! ) ``` 这个示例脚本中使用了`setx`命令来更新系统的环境变量值。首先,我们将待添加的新路径值保存在`newPathToAdd`变量中。然后,获取当前的path变量值保存在`currentPath`变量中。接下来,通过`find`命令检查新路径是否已经存在于path变量中,如果存在则退出脚本。如果新路径不存在,我们将新路径拼接到当前path变量后面,保存在`updatedPath`变量中。最后,使用`setx`命令将更新后的path值写入系统环境变量中。 需要注意的是,修改系统环境变量需要管理员权限,因此需要以管理员身份运行批处理脚本。另外,批处理脚本中的`C:\your\new\path`应替换为实际的待添加路径。 希望对你有帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值