微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

忽略heredoc的评论

如何解决忽略heredoc的评论

我正在尝试使用cat <<EOL将多行文本写入文件。我想问一下是否可以在该命令中注释掉文本行。如果我使用#,它仍然会打印到文件中。

cat >$HOME/myfile <<EOL
text
# text to be commented out
text
EOL

解决方法

可以使用grep代替cat来省略

注释

grep -v "^#" > myfile <<EOF
# line omitted
but this whole line is # included,with the comment too
EOF

如果您想删除#之后的所有内容,则可以像其他答案一样使用sed,但要仔细决定要在空白处保留的内容:是否将其删除?或包含在输出中?

,

是的,您可以使用multiprocessing进行此操作:

sed

cat <<EOF | sed '/^#/d' > myfile Hello # there! World EOF 写入Hello\nWorld

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。