今天在写Oracle安装前的环境配置脚本的时候,要在/etc/sysctl.conf文件上添加多行,以前是用的echo,以为有点麻烦,发现能够经过cat << EOF替换。bash
cat << EOF >> /etc/sysctl.conf ###install oracle by liups echo begin kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default = 262144 net.core.rmem_max = 262144 net.core.wmem_default = 262144 net.core.wmem_max = 262144 ###install oracle by liups echo end EOF这样就能够轻松搞定了,不须要每次都得修改echo里面的值了。,
发如今cat <<eof中若是带有 $变量的时候会将$和变量名变成空格,想到到转义字符添加以后能够搞定。一样cat <<eof中含有`的时候会将``内的命令转换成结果,一样也须要添加转义字符好比oracle
cat << EOF >/home/oracle/.bash_profile PATH=$PATH:$HOME/bin export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/10.2.0/db_1 export ORACLE_SID=yqpt export PATH=$PATH:$ORACLE_HOME/bin export NLS_LANG="AMERICAN_AMERICA.AL32UTF8" EOF