私はUbuntu 9.04 x64を使用しています。
私はsudo bashを呼び出すファイルstartup.rbを持っているので、15分ごとにパスワードを入力せずに管理タスクを実行するためのルートコンソールが常にあります。
このスクリプトは別のスクリプトStartup.rbによって呼び出され、両方のファイルの内容は次のようになります -
ファイル~/Startup.rb
#!/usr/bin/ruby
system "gnome-terminal --maximize -x ruby ~/startup.rb"
ファイル~/startup.rb
#!/usr/bin/ruby
`sudo some-repetitive-administrative-task`
....
....
`sudo bash` #Not using `sudo -i`, since that makes `pwd` -> /root
~/Startup.rbファイルをスタートアップ アプリケーションリストに含めました。
ここでの問題は、のターミナルでsudo bash
、何かを入力して何らかの出力を期待しても、何も得られないことです。だから私が書くecho hello world
と、私は何の出力も得られません。sudo bash
これにより、コマンドの標準出力 (stdout) はコンソールではないと思われます。
だから、なぜこれが起こっているのか知りたいですか?現在の stdout パスを知るにはどうすればよいですか? または、stdout を現在のコンソールに戻すにはどうすればよいですか?
- ありがとう