Linuxの書き込みコマンドの問題


3

私は自分自身にメッセージを送ろうとしています write これは、いくつかのスクリプトをバックグラウンドで実行し、自分のいる端末に何かをエコーできるようにするためです。

だから、私はいつも同じエラーになり、他に何を試してみるのかわからない。

user $: mesg y
user $: mesg
is y
user $: write myuser
write: myuser has messages disabled
echo 'hello' | write myuser
write: myuser has messages disabled
myuser $DISPLAY
write: myuser has messages disabled
echo 'hello' | write myuser $DISPLAY
write: myuser has messages disabled

なんでこんなことが起こっているの?どうすれば修正できますか?

シモンズ:私はrootと同じ結果になります。


1
走ってください cat /etc/default/devpts 結果を表示します。また、実行してください /bin/mount | grep devpts 結果をここにコピーしてください。最後に、どのLinuxディストリビューションを使っていますか?
John1024

cat: /etc/default/devpts: No such file or directory。 Gentooを使っています。 2番目のコマンドはこれを促します。 devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620)
Rubén Marrero

2
OK。 gid=5,mode=620 に従って必要な値です。 man mount有効にする mesg。それらは私が持っている価値と上記のあなたの命令です、 echo 'hello' | write myuser、私のためにうまくいきます。私は他の誰かがあなたを助けるだろうアイデアを持っていると思います。
John1024

@ John1024問題ないですね、あなたのコメントは正しい答えを私に指摘してくれました^^。
Rubén Marrero

優秀な。 write のような警告を私に与えた logged in more than once; writing to pts/1 しかし、私がptsを指定する必要なしに働き続けました。
John1024

回答:


2

あなたはコマンドを使用することができます

who -T

スクリプトにどのポートを書き込みに使用するかを決定します。 「+」または「 - 」の文字は、端末が書き込み可能かどうかを示します。

[lion@FedoraXXI ~]$ who -T
lion     ? :0           2015-04-24 15:18 (:0)
lion     + pts/0        2015-04-24 19:58 (:0)
lion     - pts/1        2015-04-24 21:24 (:0)
[lion@FedoraXXI ~]$

の出力 who -T です vdevatman ? :0.0 2015-04-23 23:09 (:0.0) 私とちょうどの出力 who 同じですが、なし ? 理由はわかりませんが、あなたの場合ほど有用ではないようです。
Rubén Marrero

これで解決したので、あなたが提案するコマンドの出力は次のようになります。 myuser $: who -T vdevatman ? :0.0 2015-04-26 01:46 (:0.0) vdevatman + pts/1 2015-04-26 18:46 しかし、それがうまくいったらそれは役に立ちます、それは解決策の一部ではありません。
Rubén Marrero

1

コメントのおかげで、フリーネットネットワーク上の## linuxチャンネルと man mesg 私はその答えを見つけました。

myuser $: w
 18:45:42 up 17:00,  2 users,  load average: 4.10, 3.84, 3.52
 USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
 myuser :0.0      01:46   ?xdm?  23:59   0.02s /usr/bin/ck-launch-session /usr/bin/dbus-launch --exit-with-session /usr/bin/i3

myuser $: sudo login myuser
 Password: 
 Last login: Sun Apr 26 18:18:43 CEST 2015 on pts/6

myuser $: w
 18:46:31 up 17:00,  3 users,  load average: 4,11, 3,89, 3,56
 USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
 myuser :0.0      01:46   ?xdm?  24:13   0.02s /usr/bin/ck-launch-session /usr/bin/dbus-launch --exit-with-session /usr/bin/i3
 myuser pts/1     18:46    7.00s  0.86s  0.00s w

myuser $: echo "Now it works! :). Thanks to John1024 from http://superuser.com and <arvut> from ##linux channel in freenode's network :)" | write myuser /dev/pts/1

  Message of myuser@tux the pts/1 at 18:50 ...
  Now it works! :). Thanks to John1024 from http://superuser.com and <arvut> from ##linux channel in freenode's network :)
  EOF 

これは私が最小限のグラフィカルセットアップを使っているからといって起こりました。普通のデスクトップ環境を使っていても起こりません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.