User Tools

Site Tools


unixscripts:0-intro

This is an old revision of the document!


Unix Scripts

I use these scripts every day, they might be useful to others. They might even be useful templates for how to write a decent bash script!! You can download them individually by clicking on the links or you can download this tarball to get them all. Install them somewhere on your path - I use ~/bin. All my scripts honour the -h, –help options.

libraries

These are used in my other scripts

argp.sh

argp.sh - a wrapper around getopt(1) to make life much easier for script developers and more predictable for script users. See also argp.sh

usage for argp.sh

bh-stdlib

Photo scripts

Generally, these are required jhead(1), jpgtrans(1), netpbm-progs (pnmscale(1)), libjpeg (djpeg(1), cjpeg(1))

erect-jpeg

erect-jpeg - rotate a photo so that it displays correctly by examining the Orientation Exim information in the file. Uses xargs(1) to parallelise operations to as many CPUs as it can find.

usage for label-photos

label-photos

label-photos - view *.jpg files and prompts for a label for each, putting the label into the Exif comment field. It also recurses through any directories called zoom, applying the same label to photos of the same name.

usage for label-photos

rename-jpeg-by-date

rename-jpeg-by-date - renames jpg files according to the date reported by jhead

usage for rename-jpeg-by-date

resize-jpeg

resize-jpeg - size a jpeg so that the longest side is the required number of pixels and the other side is scaled.

usage for resize-jpeg

shrink-jpeg

shrink-jpeg - passes photos through djpeg(1) and cjpeg(1) which can result in a size reduction of about 50% without compromising much on quality. The amount of shrinkage depends on the camera, of course.

usage for shrink-jpeg


general scripts

backup-copy

backup-copy - my backup script - using this, I can keep a backup at a cost of only about 2Mb/day. Uses the hard-linking power of rsync(1)

usage for backup-copy

ff

ff - recursively find files (wrapper for find(1))

usage for ff

fs

fs - recursively search for patterns in files (wrapper for find(1) and grep(1))

usage for fs

fit

fit - fits a bunch of files/directories into CD or DVD sized subdirectories ready for burning

usage for fit

m

m - pretty display of man pages (needs 'v' and a postscript or pdf viewer) eg m less to get a pretty man page for less(1)

usage for m

mass-mv

mass-mv - renames and or moves files according to a regex; can also clean up filenames removing whitespace and/or weird characters

usage for mass-mv

newest

newest - recursively list files in directories in date order. If called as oldest, reverse the sort direction. If called as biggest or smallest list by file size.

usage for newest

r

r - run a command with sudo or popup a root xterm

usage for r

refactor

refactor - uses find(1) and sed(1) to search and replace

usage for refactor

v

v - view or execute any type of file going rather beyond the scope of lessopen - in the simple case of a text file this is just shorthand for less(1)

usage for v

xcheck

xcheck - runs a command (usually X) and shows stdout and stderr in a popup window if there's an error eg xcheck – remote-x11vnc -x xdm

usage for xcheck

unixscripts/0-intro.1546563461.txt.gz · Last modified: 2019/01/03 17:57 by admin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki