shellscripts
shellscripts copied to clipboard
Collection of random scripts that make my life in the Linux console way simpler
shellscripts
Collection of random scripts that make my life in the Linux console way simpler.
Do not expect readability, stability, compatibility, portability, applicability, or survivability.
Most of them are just a verbatim dump of what I'm using on my system(s). Simply sharing them to give back to the community. Written in shell, bash, python, and even php.
List of scripts and what they do
This section is included because it may be impossible to understand what some of they do by simply looking at them.
2pdf <files ..>converts office files to pdfafterpid <pid> <command>executed the command after the specified process has terminatedaslr-off <command>launches command with ASLR disabledawkrcswaps first and second column (and removes the rest)awksum [n [g1 g2 ...]]outputs the decimal sum of first column (or nth) column grouping them by columns g1 and g2 and ...base64clipboard [file]copies a file to clipboard for transfer to remote server via base64collage <images>joins images side-by-side preserving original resolutioncollage.v <images>joins images vertically preserving original resolutiondeflatedeflates contenthtmlentitydecodedecodes HTML entitiesinflateinflates deflated contentjson2csvconverts json input to csv outputmelodyping [params] <dest>pings dest and produces a sound on every packet received (pitch is latency depenedent)melodywatch <command>watch command and procude audible alert when output changesmountvdi <file.vdi>mount and unmount vdi imagesodfgrep <string> <files ..>identifies ODF files that contain the stringonlyasciifilter out non-printable characterspaths2fs <basedir>convert list of paths (e.g. find output) to actual filesystempdf2image <file.pdf> [out.pdf]'print-and-scan' file.pdf document, save as out.pdf; pauses in the middle so edits can be done if neededpdfbooklet <file.pdf>prepares file.pdf to be printed as a book (two-sided); BOOK1-file.pdf is to be printed on one side and BOOK2-file.pdf on the other side of the paper stackpdf.clear-meta <file.pdf>removes metadata from file.pdf overwriting itpdf.convert_from_iOSconverts iOS Keynote generated pdf file so that loading it doesn't take forever; overwrites originalrange <n>generates all n-digit numbers from 000...000 to 999...999; likeseqbut prints "004" instead of "4"renamelinks <perlexpr> <files ..>takesrenamesyntax but changes the symlink string instead of renaming the filerir2nmapconverts whois inetnum/NetRange/etc. output (e.g. "8.0.0.0 - 8.127.255.255") to format that nmap can take as a parameter (e.g. 8-8.0-127.0-255.0-255)selcol <n1,n2,n3>prints only selected columns (alias for awk '{print $n1,$n2,$n3}')sftp-once [params] [user@]<host>makes sftp connection to host without verifying or saving keysshqueueasynchronously executes long-running shell commands one-by-one; first instance will become the server, the others will be clients (shqueue [commandprefix])skiprows <n>skip first n rowssortuniq [-c]much faster (to my own surprise) replacement forsort | uniq; removes duplicate lines without actually sorting themssh-once [params] [user@]<host>makes ssh connection to host without verifying or saving keysssh-once-legacy [params] [user@]<host>makes ssh connection to host without verifying or saving keys; supports obsolete algorithmsstriptagsremoves HTML tagstar.nometa [params]creates a tar archive without any metadatatoplines [-n]show most prevalent lines and their count; prints top n linestrimnremoves trailing newline(s) from inputunbuffer <command>disables output buffering for commands that can't do that nativelyurldecodedecodes URL encoded characters (RFC3986)urlencodeURL encodes characters (RFC3986)vprogress [target[!]] <command>shows remaining time until command output reaches zero (or target number); use target! for exact match command is run periodically and must return a single integerxargs1 [options] <command>executes command with parameters taken from input; alias forxargs -L1xidentprints the most useful info about an X window selected with your mouse