1.cat >file 记录的是键盘输入,相当于从键盘创建文件,并且只能创建新文件,不能编辑已有文件.>是数据重导向,会将你输入的文本内容输出到file中.

 

例如:

cat > file 和  cat > file <<EOF _cat << EOF

不会出现>提示符,直接输入回车,文字都会记录.ctrl+c或者ctrl+d才能退出.之后通过cat wyg,生成了wyg这个文件.

就可以查看刚才输入的内容.

2.cat <<EOF,

cat > file 和  cat > file <<EOF _cat << EOF_02

注意:这里的<<是左方向的,并且会出现PS2的提示符>,并且在输入EOF后,会退出编辑状态并打 印出编辑内容.其实<<EOF与EOF之间是为了限定内容范围,并无实际意义,相当于ctrl+d,还可以理解为将echo一行一行的内容整 和到一起.但并不生成文件.

EOF只是标识,并不是固定不变的也可以用别的符号代替比如EEE等等。Cat << EOF  ...EOF 最后一个EOF一定顶格写,还有相关命令一定要顶格写,否则起不到ctrl+d的作用.

3.cat >file <<EOF

cat > file 和  cat > file <<EOF _cat << EOF_03

出现>命令提示符输入内容,输入EOF又可以结束本次输入,同时生成了wyg这个文件.

 

cat > file 和  cat > file <<EOF _cat << EOF_04

还有看到cat <<EOF| "|"之前是标准输入,之后为标准输出,再次输入EOF后结束,屏幕上还会打印出执行的命令内容.cat <<-EOF可以忽略掉TAB键.

cat > file 和  cat > file <<EOF _cat << EOF_05

注意这里的命令一定要紧跟"|"管道,或者用"\"转义符号,否则会提示找不到命令.

看起来,EOF就是是一个标识,分界符,方便脚本编辑.记录一下,备用.