sudo heredoc:bash:warning:here-document在第0行由文件结尾分隔(想要'EOF ...... EOF')

问题描述 投票:-1回答:1

我的目标是使用sudo将内容写入另一个用户的xstartup文件。

但我的尝试......

sudo -iu user1 bash -lic 'cat > ~/.vnc/xstartup <<\EOF
...
EOF'

...结果是...

bash: warning: here-document at line 0 delimited by end-of-file (wanted `EOF...EOF')

然而嵌套的heredocs工作......

sudo -iu user1 bash -s <<\OUTER
cat > ~/.vnc/xstartup <<\EOF
...
EOF
OUTER

有没有嵌套heredocs完成sudo重定向的任何建议?

bash sudo heredoc
1个回答
2
投票

你有很多不必要的层。

sudo -u user1 tee ~user1/.vnc/xstartup > /dev/null <<\EOF
...
EOF
© www.soinside.com 2019 - 2024. All rights reserved.