我发现我可以使用一个Bash会话来按以下方式在另一个会话中打印文本。
但是为什么文本
(我知道这会引起很多批评,也许会使任何随后的答案充满“别这样做!”但我想这样做的真正原因是自动提供密码给
echo './myscript' > /dev/pts/0 # assuming session 2 is using this tty
# or
echo './myscript' > /proc/1500/fd/0 # assuming session 2's pid is 1500
但是为什么文本
./myscript
只打印而不执行呢?我有什么办法可以用这种方式执行我的脚本吗?(我知道这会引起很多批评,也许会使任何随后的答案充满“别这样做!”但我想这样做的真正原因是自动提供密码给
sshfs
。我正在使用本地WDMyCloud系统,并且每晚在关闭电源时都会删除我的.authorized_keys
文件。)
ssh myserver < myfifo
?根据我的最近经验,似乎ssh命令拒绝从重定向中读取密码。我不确定机制是什么,但我想这是一种安全措施。你有其他了解吗? - JellicleCat