Thursday, August 20, 2009

Happy 40th Birthday Unix

Unix, Linux is more than an operating system for us Techies it's a kind of way of life. I get great intellectual pleasure from finding clever ways to write scripts using Bash, Zsh, Perl, AWK or whatever. These days I spend more time using Cygwin on Vista which kind of gives me the best of both worlds. I would like to abandon Microsoft completely but have to work with so many clients that just have Windows.

I've recently had some fairly horrific experiences of using Microsoft software Visual Studio, ASP etc and found myself having download 100's of MB of code just to set a few miserable flags. Everything Microsoft do seems to overloaded with bureaucratic heaviness, endless series of black boxes, wizards where I feel I control very little.

Anyway thank heavens for LAMP Linux-Apache-MySQL-PHP/Perl and the wonderful community of users that surround it

Labels: , , , ,

Monday, February 09, 2009

Creating Your Own Help File System

*nix users create lots of their own utilities/scripts over time. Scripts to search for information, query a database etc etc. The danger is however that they forget what they've called their script and what it was supposed to do.

My own successful solution has been to create a simple hierarchical help system.

hhelp is just a text file which as you can see lists my help files which are also simple help files.

hhelp (master help file) lists

$ hhelp
vhelp : vi/grep utilities
thelp : tex/latex
yhelp : yoyo (toggle between two directories)
mhelp : marker help
nhelp : notes
zhelp : z-notes
chelp : cygwin help
ihelp : info help
phelp : paste help

so typing phelp at the command line would list all my scripts which manipulate the copy/paste buffer

$ phelp
cclip clean copy-paste buffer
vxp vi paste buffer
vxpp print paste buffer
vfp vi file in paste buffer
cxp cp remote paste to local paste

So my system is more an aide-memoire than a fully fledged help system, but at the moment that's all I really need, of course my scripts also have a single line description which I can list when required

Labels: , , ,