通过bash从其他用户的屏幕发送命令

通过bash从其他用户的屏幕发送命令

问题描述:

可以这样说:通过bash从其他用户的屏幕发送命令

我有2个用户:root和mc。 我想在位于mc上的屏幕上运行一个命令,但我需要以root身份运行脚本。

这是我想出了:

sudo -u mc -H sh -c "screen -r lobby -p 0 -X stuff "restart $(printf '\r')"" 

我想,用2 ' " '不会工作,让我怎么管理这个问题?

+1

你的问题是关于如何在bash中嵌入引号而不是你的标题所暗示的。你有没有试过逃避内在的一套引号? – silel

如果您在双引号字符串中使用双引号,只需在其前加\以跳过它。 sudo -u mc -H sh -c "screen -r lobby -p 0 -X stuff \"restart $(printf '\r')\""