linux写环境变量对字符转义

Posted mvpbang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux写环境变量对字符转义相关的知识,希望对你有一定的参考价值。

  之前在配置oracle环境换了或者jdk环境,用脚本初始化配置,发现$JAVA_HOME被真实路径取代,这不操蛋吗,今天无意间发现echo  -e可以转义特殊字符

得之兴业,岁在今朝!

  • 对oracle账户下oaclle单实例数据库变量的设置

#!/bin/bash
echo export ORACLE_BASE=/u01/app/oracle >>.bash_profile  
echo -e "export ORACLE_HOME=$ORACLE_BASE/product/12c" >>.bash_profile     //echo -e 对特殊字符转义 $  写入到文件 $
echo export ORACLE_SID=oracle12c >>.bash_profile
echo -e "PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:$ORACLE_HOME/lib:$ORACLE_HOME/lib64" >>.bash_profile
echo -e "LD_LIBRARY_PATH=$ORACLE_HOME/bin:/usr/bin" >>.bash_profile
echo export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK" >>.bash_profile

source ~/.bash_profile   //刷新用户环境变量
  •  官方对echo解释

ECHO(1)                          User Commands                         ECHO(1)

NAME
       echo - display a line of text

SYNOPSIS
       echo [SHORT-OPTION]... [STRING]...
       echo LONG-OPTION

DESCRIPTION
       Echo the STRING(s) to standard output.

       -n     do not output the trailing newline   //不换行

       -e     enable interpretation of backslash escapes  //允许转义字符
  •   Linux直接转义特殊字符

#!/bin/bash
#desc init jdk env
cat >> ~/.bash_profile<<EOF
export ABC=/tmp
export abc=$ABC/123
EOF

//结果
[[email protected]120 ~]# cat .bash_profile 
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs

export PATH=$PATH:$HOME/bin

export ABC=/tmp
export abc=$ABC/123

以上是关于linux写环境变量对字符转义的主要内容,如果未能解决你的问题,请参考以下文章

Linux Gvim shell 替换:变量替换,命令替换,转义字符

linux 变量环境变量

linux 变量环境变量

linux环境中使用转义字符使命令行字符颜色高亮

Linux环境变量

iOS:转义网址链接中的特殊字符问题