首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"cat > filename << EOF“和"cat << EOF > filename”是否等价?

"cat > filename << EOF“和"cat << EOF > filename”是否等价?
EN

Stack Overflow用户
提问于 2021-07-09 12:50:42
回答 1查看 88关注 0票数 1

cat > filename << EOF vs cat << EOF > filename

当我测试它时,看起来它们是等价的,但我不完全理解为什么会这样。

我知道这个命令的目的是不断地将STDOUT转换为filename,直到我键入EOF,然后按CTRL-D。

cat > filename << EOF (就其顺序而言)对我来说很有意义:将内容输出到filename中,直到我按Eof键告诉它停止为止。

但令我惊讶的是,cat << EOF > filename也能工作。我听说bash是从左到右读的。在这种情况下,我的STDOUT如何获取filename?

EN

回答 1

Stack Overflow用户

发布于 2021-07-09 12:58:14

<< EOF控制去往cat的标准输入的内容。

> filename控制cat的stdout的去向。

应用这两种方法的顺序并不重要,结果是相同的。当然,cat负责将其输入复制到其输出。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68311430

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档