用法:
cmd << delimiter
Here Document Content
delimiter
- EOF 只是一个标识而已,可以替换成任意的合法字符
- 作为结尾的delimiter一定要顶格写,前面不能有任何字符
- 作为结尾的delimiter后面也不能有任何的字符(包括空格)
- 作为起始的delimiter前后的空格会被省略掉
- cat > 1.txt <<EOF 与 cat <<EOF > 1.txt 效果一样的,都是将<<EOF之后的内容覆盖到1.txt文件中
<<EOF和<<“EOF”和<<\EOF
1 2 3 4 5 6 7 8 |
下面的$1会被替换 cat << EOF > output.sh echo "This is output" echo $1 EOF |
1 2 3 4 5 |
下面的$1被替换不会被替换(效果等同<<\EOF) cat << "EOF" > output.sh #注意引号 echo "This is output" echo $1 EOF |
<<EOF和<<-EOF的区别
<<-EOF会把每行前面的tab空白去掉, 注意空格是去不掉的, 只能去掉tab
1 2 3 4 |
cat > 1 <<-EOF Hello , Word!#前面是tab,不是空格 test #前面是tab,不是空格 EOF |
0 Comments