class StTools::System
Public Class Methods
exename()
click to toggle source
Метод возвращает имя запускаемого скрипта (без пути), независимо от того, откуда данный метод вызывается.
@return [String] имя скрипта или nil в случае ошибки
# File lib/st_tools/system.rb, line 30 def self.exename res = `ps -ef | grep #{Process.pid}` lines = res.split(/[\r\n]/) lines.each do |one| res = one unless one.match(/grep/) end res = res.split(/\d{1,2}\:\d{1,2}\.\d{0,100}/).last res = File.basename(res) res.split(' ').first end
memory()
click to toggle source
Метод возвращает размер памяти, занятой приложением
@return [Integer] размер памяти в байтах
# File lib/st_tools/system.rb, line 7 def self.memory return (`ps -o rss -p #{Process::pid}`.chomp.split("\n").last.strip.to_i * 1024) end
screen(size)
click to toggle source
Метод возвращает размер терминала - число строк в терминале или число символов в строке
@param [Sym] size возвращаемый параметр @option size [Sym] :width вернуть число символов в строке терминала @option size [Sym] :height верунть число строк в терминале @return [Integer] число символов в строке терминала или число строк в терминале
# File lib/st_tools/system.rb, line 17 def self.screen(size) sizes = `stty size 2>/dev/null`.chomp.split(' ') raise if sizes.count == 0 raise if sizes.first.match(/\d/).nil? return sizes.last.to_i if size == :width return sizes.first.to_i if size == :height rescue return (size == :width) ? 100 : 25 end