Ruby wmclasslib
dbg
require 'wmclasslib/dbg'
Dbg::VERBOSE = FALSE
dp( line ) # Debugprinter
x_assert( info ) # Assertion
x_require( info ) # Require
x_ensure( info ) # Ensure
dbg_warn() # Debug-Warnmeldung mit backtrace und Zeilennummer
dbg_info() # Debug-Infomeldung mit backtrace und Zeilennummer
Klassen: AssertError, RequireError, EnsureError
dir_ext
require 'wmclasslib/dir_ext'
all_files( base_path, recursive=true ) # alle Dateien inkl. Unterverzeichnissen
Eout
Logfile-Writer
require 'wmclasslib/eout'
EOut.init( logfile, false, true ) # nur auf Logfile schreiben, nicht auf stderr
EOut.warn_s( message ) # Kurze Warnmeldung
EOut.dbg_s( message ) # Kurze Debugmeldung
EOut.info_s( message ) # Kurze Infomeldung
EOut.err_s( message ) # Kurze Errormeldung
EOut.warn_l( subject, message ) # Mehrzeilenmeldung, auch dbg_l, info_l, err_l
EOut.stderr_on() # Ausgabe auf stderr ein
EOut.stderr_off() # Ausgabe stderr aus
EOut.log_on() # Ausgabe Logfile ein
EOut.log_off() # Ausgabe Logfile aus
FileSet
Alle Files in einem Basisordner bearbeiten.
require 'wmclasslib/fileset'
fs = FileSet.new( basedir ) do |path, fn, stat|
if stat.file? ...
...
end
passwd
Passwort-Eingabe Shell/Kommandozeile
require 'wmclasslib/passwd'
pw = get_passwd( zeige_char=nil, prompt=nil, char_range=0x20..0x7F )
platform
require 'wmclasslib/platform'
platform() # -> :unix, :windows, :java, :other
sendmail
require 'wmclasslib/sendmail'
sendmail( smtp_server, mailfrom, mailto, subject, msg, dbg=false )
string2localtime
string2localtime( timestring )
Formate:
* 2016/05/20 15:20:33 # diverse Logfiles
* Mon Feb 07 17:20:33.673771 2017 # Apache
string_ext
reformat( length ) # Text auf Zeilenlänge length umbrechen