shell脚本重定向的问题。

outfile='members.sql'IFS=','whilereadlnamefnameaddresscitystatezipdocat>>$outfile<<EO... outfile='members.sql'
IFS=','
while read lname fname address city state zip
do
cat >> $outfile <<EOF
INSERT INTO members(lname,fname,address,city,state,zip) VALUES
('$lname','$fname','$address','$city','$state','$zip');
EOF
done < ${1}
这3个重定向分别代表什么意思。。
展开
 我来答
cnbubble
2017-05-02 · TA获得超过2607个赞
知道大有可为答主
回答量:1990
采纳率:83%
帮助的人:776万
展开全部
>>比较好理解,是将某个命令的输出以追加方式重定向到文件,>则是先清空文件内容,再放入新文件。
cat <<EOF 中 的 EOF是文件分界符号,即在这个符号之前的内容认为是一个文件,EOF是End of file,是常用的文件分界符号,也可以用其他几个字符代替。
cat命令默认用法是 cat + 文件(输入) 其输出是文件内容,输出位置是标准输出(屏幕)。这里没有文件, <<EOF 可以想成一个特殊文件,它是由下面的文字直到EOF直接的内容组成的文件。
而<是本来需要屏幕输入的内容 从文件直接读取,和<<的意思差不多,(就好像 >和>>差不多一样)区别是:<后面是文件名,<<后面 是个代表文件分界的符号。

命令可以这样写: cat <<EOF >> $outfile
或cat <fileName1 >>fileName2 (文件1内容追加到文件2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式