future2012lg

博客园 首页 新随笔 联系 订阅 管理

1)cat和EOF简介

cat      用于显示文本文件内容,全部输出
EOF   “end of file”,表示文本结束符
 
(2)使用
用法1.多行导入文件(新建文件或者覆盖文件内容)
 
  1. cat << EOF >abcd.txt   
  2. Hello!   
  3. This is a test file!   
  4. Test for cat and EOF!   
  5. EOF 
 
来看下执行结果
 
  1. cat abcd.txt  
  2. Hello!   
  3. This is a test file!   
  4. Test for cat and EOF! 

这就是多行导入!
 
用法2.文件追加
cat << EOF >> test.sh
 
(3)说明
其实可以用其他字符来代替EOF,它也只是个标识符而已!
如果cat内容中带有 $变量的时候会将$和变量名变成空格,想到到转义字符\添加之后可以搞定。同样cat <<EOF中含有`的时候会将“内的命令转换成结果,同样也需要添加转义字符\
例如
 
 
  1. cat <<EOF >> /home/oracle/.bash_profile  
  2. PATH=\$PATH:\$HOME/bin  
  3. export ORACLE_BASE=/u01/app/oracle  
  4. export ORACLE_HOME=\$ORACLE_BASE/10.2.0/db_1  
  5. export ORACLE_SID=yqpt 
  6. export PATH=\$PATH:\$ORACLE_HOME/bin  
  7. export NLS_LANG="AMERICAN_AMERICA.AL32UTF8" 
  8. EOF 
 
如果不是在脚本中,我们可以用Ctrl-D输出EOF的标识
# cat > test.txt
abcd
dcba
eftf
Ctrl-D
 
posted on 2013-03-28 20:27  future2012lg  阅读(485)  评论(0编辑  收藏  举报