请教cat > file1 << EOF是什么意思?

sh/bash/dash/ksh/zsh等Shell脚本
回复
wwangzhihang
帖子: 54
注册时间: 2006-06-23 7:43
联系:

请教cat > file1 << EOF是什么意思?

#1

帖子 wwangzhihang » 2009-05-19 23:39

我看到很多config里面有

代码: 全选

cat  > file1 << EOF
xxxx
EOF
请问这里的EOF是必须的么?必须使用EOF么?
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

Re: 请教cat > file1 << EOF是什么意思?

#2

帖子 BigSnake.NET » 2009-05-19 23:42

cat > file1 << END
xxxx
END


cat > file2 << OHMYGOD
xxxx
OHMYGOD
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
头像
jioyo源
帖子: 3476
注册时间: 2008-10-08 13:48

Re: 请教cat > file1 << EOF是什么意思?

#3

帖子 jioyo源 » 2009-05-19 23:45

BigSnake.NET 写了:cat > file1 << END
xxxx
END


cat > file2 << OHMYGOD
xxxx
OHMYGOD
:em04
后面那个只是表示当读取到他的时候结束输入,相当于^d
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286
wwangzhihang
帖子: 54
注册时间: 2006-06-23 7:43
联系:

Re: 请教cat > file1 << EOF是什么意思?

#4

帖子 wwangzhihang » 2009-05-19 23:51

jioyo源 写了:
BigSnake.NET 写了:cat > file1 << END
xxxx
END


cat > file2 << OHMYGOD
xxxx
OHMYGOD
:em04
后面那个只是表示当读取到他的时候结束输入,相当于^d
非常感谢
头像
lonelycorn
帖子: 438
注册时间: 2007-05-20 18:44
来自: 唐山,河北,中国
联系:

Re: 请教cat > file1 << EOF是什么意思?

#5

帖子 lonelycorn » 2009-05-21 20:05

here document
<< XXX
...
XXX
表示从第一个XXX到最后一个XXX的内容作为标准输入
我逗无了奈了……
HP的本跑ubuntu还得把我折腾死。
显卡、无线/有线网卡、声卡、键盘……

代码: 全选

while :
do
  work_hard
done
wyfhyl
帖子: 75
注册时间: 2008-06-15 10:54

Re: 请教cat > file1 << EOF是什么意思?

#6

帖子 wyfhyl » 2009-05-21 20:39

EOF不是必须的,只是一个结束的标志,在输入输出中,最经常用的就是EOF,当然也可以用别的标志,比如一个单词,what或者别的,没有限制的
头像
Jarson
帖子: 2371
注册时间: 2008-07-21 9:44
来自: 深圳
联系:

Re: 请教cat > file1 << EOF是什么意思?

#7

帖子 Jarson » 2009-05-21 22:15

lonelycorn 写了:here document
<< XXX
...
XXX
表示从第一个XXX到最后一个XXX的内容作为标准输入
学习
linuxleio
帖子: 11
注册时间: 2009-05-18 6:47

Re: 请教cat > file1 << EOF是什么意思?

#8

帖子 linuxleio » 2009-05-24 1:56

如果把字符串输入到文本里则最后以EOF(文本结束符)表示结束。不过在here document里则没什么特别含义了,前后两个EOF只不过相当于分割符,界定了它们之间的内容范围。
回复