cat << EOF > test.sh # >表示覆盖
......
EOF
或者
cat >test.sh <<EOF # >表示覆盖
......
EOF
----------------------------------------------------------
cat << EOF >> test.sh # >>表示追加
......
EOF
或者
cat >>test.sh <<EOF # >>表示追加
......
EOF
cat>>EOF与cat>>-EOF的区别:
- 如果重定向的操作符是<<-,那么分界符(EOF)所在行的开头部分的制表符(Tab)都将被去除
- 可以解决由于脚本中的自然缩进产生的制表符
- 在使用cat<<EOF时,输入完成后,需要在一个新的一行输入EOF结束stdin的输入。EOF必须顶行写,前面不能用制表符或空格键
例子
cat>>/etc/yum.repos.d/CentOS-Local.repo<<-EOF
[Local]
name=LocalYum
baseurl=file:///yum
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
EOF
193

被折叠的 条评论
为什么被折叠?



