Как напечатать команду оболочки на рубиновых рельсах? - PullRequest
0 голосов
/ 26 сентября 2019

Я хочу показать выход из команды.

в моем index.html.erb

<%= system("ls /home/username/") %>

Может, мне помочь?я новичок в рубине и рельсах

1 Ответ

1 голос
/ 26 сентября 2019

При выполнении команды, подобной этой, в производственной среде необходимо учитывать множество факторов: от рабочих и очередей заданий до проверки машины, которая будет выполнять команду, которая может ее запустить, и анализа ответа.Этот тип вещей должен быть сделан с помощью модели внутри отложенной работы ... но если вы просто хотите, чтобы она работала и не заботились об этом, просто сделайте

<%= `ls home/username/` %>

, которая даст вамрезультат выполнения команды.Проблема в том, что system возвращает только одно из 3 возможных значений true false или nil, а результат выполнения записывается в std_out.

Чтобы получить код выхода команды, которую вы запускаете, вы можете сделать:

<%= system("ls /home/username/"); $? %>

Это выведет pid, под которым запускалась команда ls, и значение состояния выхода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...