NAME Lazy::Utils - Utilities for lazy VERSION version 1.05 SYNOPSIS Utilities for lazy Methods trim($str) trims given string $str: *string will be trimed* return value: *trimed string* ltrim($str) trims left given string $str: *string will be trimed* return value: *trimed string* rtrim($str) trims right given string $str: *string will be trimed* return value: *trimed string* file_get_contents($path) gets all contents of file in string type $path: *path of file* return value: *file contents in string type, otherwise undef because of errors* file_put_contents($path, $contents) puts all contents of file in string type $path: *path of file* $contents: *file contents in string type* return value: *success 1, otherwise undef* shellmeta($s) escapes metacharacters of double-quoted shell string $s: *double-quoted shell string* return value: *escaped string* _system($cmd, @argv) executes a system command like Perl system call $cmd: *command* @argv: *command line arguments* return value: *exit code of command. 511 if fatal error occurs* returned $?: *return code of wait call like on Perl system call* returned $!: *system error message like on Perl system call* bashReadLine($prompt) reads a line using bash $prompt: *prompt* return value: *line* commandArgs($prefs, @argv) resolves command line arguments, eg: -opt1 -opt2=val2 --opt3 val3 --opt4=val4 cmd param1 param2 ... -- long parameter $prefs: *preferences in hash type* optionAtAll: *accepts options after command or first parameter otherwise evaluates as parameter, by default 0* noCommand: *use first parameter instead of command, by default 0* @argv: *command line arguments* return value: *{ -opt1 => '', --opt2 => 'val2', --opt3 => 'val3', --opt4 => 'val4', command => 'cmd', parameters => ['param1', 'param2', ...], long => 'long parameter' }* cmdArgs(@argv) resolves command line arguments using commandArgs with default preferences whereisBin($name, $path) searches valid binary in search path $name: *binary name* $path: *search path, by default "/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin"* return value: *binary path founded in search path, otherwise undef* fileCache($tag, $expiry, $subref) gets most recent cached value in file cache by given tag and caller function if there is cached value in expiry period. Otherwise tries to get current value using $subref, puts value in cache and cleanups old cache values. $tag: *tag for cache* $expiry: *cache expiry period* <0: *always gets most recent cached value if there is any cached value. Otherwise tries to get current value using $subref, puts and cleanups.* =0: *never gets cached value. Always tries to get current value using $subref, puts and cleanups.* >0: *gets most recent cached value in cache if there is cached value in expiry period. Otherwise tries to get current value using $subref, puts and cleanups.* $subref: *sub reference to get current value* return value: *cached or current value, otherwise undef if there isn't cached value and current value doesn't get* INSTALLATION To install this module type the following perl Makefile.PL make make test make install from CPAN cpan -i Lazy::Utils DEPENDENCIES This module requires these other modules and libraries: * Switch * FindBin * Cwd * File::Basename * JSON REPOSITORY GitHub CPAN AUTHOR Orkun Karaduman COPYRIGHT AND LICENSE Copyright (C) 2017 Orkun Karaduman This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see .