Я использую Ubuntu 9.04 x64 и,
У меня есть файл startup.rb , в котором я вызываю sudo bash , так что у меня всегда есть корневая консоль для выполнения административных задач без ввода пароля каждые 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
, я не получу никакого вывода. Что приводит меня к мысли, что стандартный вывод (stdout) команды sudo bash
- , а не консоли.
Итак, я хочу знать, почему это происходит? Как я могу узнать текущий путь стандартного вывода? Или как я могу восстановить стандартный вывод обратно в мою текущую консоль?
- спасибо