关于cat >file,cat <file <
|
|
|
1.cat >file 记录的是键盘输入,相当于从键盘创建文件,并且只能创建新文件,不能编辑已有文件.>是数据重导向,会将你输入的文本内容输出到file中. 例如: 
不会出现>提示符,直接输入回车,文字都会记录.ctrl+c或者ctrl+d才能退出.之后通过cat wyg,生成了wyg这个文件. 就可以查看刚才输入的内容. 2.cat <<EOF, cat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的; EOF是"end of file",表示文本结束符。 结合这两个标识,即可避免使用多行echo命令的方式,并实现多行输出的结果。 
注意:这里的<<是左方向的,并且会出现PS2的提示符>,并且在输入EOF后,会退出编辑状态并打印出编辑内容.其实<<EOF与EOF之间是为了限定内容范围,并无实际意义,相当于ctrl+d,还可以理解为将echo一行一行的内容整和到一起.但并不生成文件. EOF只是标识,并不是固定不变的也可以用别的符号代替比如EEE等等。Cat << EOF ...EOF 最后一个EOF一定顶格写,还有相关命令一定要顶格写,否则起不到ctrl+d的作用. 3.cat >file <<EOF 两条命令结合起来使用,既记录了键盘输入内容,同时又规定了结束符号之内的内容的范围 出现>命令提示符输入内容,输入EOF又可以结束本次输入,同时生成了wyg这个文件. 
还有看到cat <<EOF| "|"之前是标准输入,之后为标准输出,再次输入EOF后结束,屏幕上还会打印出执行的命令内容.cat <<-EOF可以忽略掉TAB键. 
注意这里的命令一定要紧跟"|"管道,或者用"\"转义符号,否则会提示找不到命令. 看起来,EOF就是是一个标识,分界符,方便脚本编辑.记录一下,备用. 文章采用了一些互联网的内容,感谢作者. |
|
转载于:https://www.cnblogs.com/xuechao/archive/2011/04/18/2020080.html