История изменений
Исправление theNamelessOne, (текущая версия) :
Метод Kernel#system
возвращает true
, false
или nil
. Для того, чтобы получить вывод команды, воспользуйся оператором backtick (и надо не забыть заэскейпить package_name, если он задаётся пользователем):
require 'shellwords'
def myfunc(package_name)
`/usr/bin/dpkg-query -W -f -f='${Version}' #{Shellwords.escape(package_name)}`
end
Либо можно использовать один из методов модуля Open3, либо popen
.
Исправление theNamelessOne, :
Метод Kernel#system
возвращает true
, false
или nil
. Для того, чтобы получить вывод команды, воспользуйся бэктиком (и надо не забыть заэскейпить package_name, если он задаётся пользователем):
require 'shellwords'
def myfunc(package_name)
`/usr/bin/dpkg-query -W -f -f='${Version}' #{Shellwords.escape(package_name)`
end
Либо можно использовать один из методов модуля Open3, либо popen
.
Исправление theNamelessOne, :
Метод Kernel#system
возвращает true
, false
или nil
. Для того, чтобы получить вывод команды, воспользуйся бэктиком (и надо не забыть заэскейпить package_name, если он задаётся пользователем):
require 'shellwords'
def myfunc(package_name)
`/usr/bin/dpkg-query -W -f -f='${Version}' #{Shellwords.escape(package_name)`
end
Либо можно использовать один из методов модуля https://ruby-doc.org/stdlib-2.4.2/libdoc/open3/rdoc/Open3.htmlOpen3
, либо popen
.
Исправление theNamelessOne, :
Метод Kernel#system
возвращает true
, false
или nil
. Для того, чтобы получить вывод команды, воспользуйся бэктиком (и надо не забыть заэскейпить package_name, если он задаётся пользователем):
require 'shellwords'
def myfunc(package_name)
`/usr/bin/dpkg-query -W -f -f='${Version}' #{Shellwords.escape(package_name)`
end
Либо можно использовать open3
.
Исходная версия theNamelessOne, :
Метод `Kernel#system` возвращает true
, false
или nil
. Для того, чтобы получить вывод команды, воспользуйся бэктиком (и надо не забыть заэскейпить package_name, если он задаётся пользователем):
require 'shellwords'
def myfunc(package_name)
`/usr/bin/dpkg-query -W -f -f='${Version}' #{Shellwords.escape(package_name)`
end
Либо можно использовать popen3
.