0
我正在測試腳本以將預定義的消息寫入另一個用戶。我首先嚐試寫信給自己(兩臺登錄在同一臺機器上)。該腳本在沒有傳遞消息的情況下掛起,直到我用發送的登錄名中的ctrl + c手動終止,此時接收登錄名只顯示我發送了EOF。該腳本如下:將寫命令腳本寫入另一個用戶
#!/bin/bash
write myName
message
!kill $$
即使我取消註釋kill命令,它像write命令不會看到以下消息。當我用CTRL + C termante發件人,我看到了下面....
[....]$ ./writeScript.sh
write: myName is logged in more than once; writing to pts/112 (hangs here)
^C./writeScript.sh: line 3: message: command not found
Terminated
[...]$
和接收器看到...
Message from [email protected] on pts/143 at 09:53 ...
EOF
如何讓我這個消息發送成功?謝謝。
第二項建議的工作,雖然第一個沒有。如何修改管道命令以發送多條獨立線路?我試過「echo m1 | echo m2 | write myName」,並且只發送了第二條消息(可能是因爲echo正嘗試管道回顯,這只是愚蠢的)。 – avikarto
heredoc(第一個示例)應該可以工作,並且是發送多行文本的最佳方式。但是,您也可以使用'echo'text \ nover \ nmultiple \ nlines「|寫myName'(只需在引號中加多行) –
要使用多個回聲,請執行:'{echo m1;回聲m2;回波m3; } |寫myName' –