sandip's story links

The best tips & tricks for bash, explained

(via www.linuxtutorialblog.com)

The bash shell is just amazing. There are so many tasks that can be simplified using its handy features. This tutorial tells about some of those features, explains what exactly they do and learns you how to use them.

Small getopts tutorial

(via wiki.bash-hackers.org)

When you want to parse commandline arguments in a professional way, getopts is the tool of choice. Unlike its older brother getopt (note the missing s!), it's a shell builtin command. The advantage is

* you don't need to hand your positional parameters through to an external program
* getopts can easily set shell variables you can use for parsing (impossible for an external process!)
* you don't have to argue with several getopt implementations which had buggy concepts in the past (whitespaces, ...)
* getopts is defined in POSIX®

Seven habits of effective text editing

(via www.moolenaar.net)

If you spend a lot of time typing plain text, writing programs or HTML, you can save much of that time by using a good editor and using it effectively. This paper will present guidelines and hints for doing your work more quickly and with fewer mistakes...

Bash Tests

(via mywiki.wooledge.org)

The test application, also known as [, is an application that usually resides somewhere in /usr/bin or /bin and is used a lot by shell programmers to perform certain tests on variables. In a number of shells, including bash, [ is implemented as a shell builtin.

Difference between test, "[" and "[[":
http://mywiki.wooledge.org/BashFAQ/031

Drupal, Pressflow and Varnish Caching

(via blogs.osuosl.org)

Lots of useful varnish and caching tips...

munin-varnish plugin

(via github.com)

Varnish http proxy cache plugins for munin.

OpenSSL update breaks Parallels Plesk Panel

(via kb.parallels.com)

Latest update of the openssl package from CentOS breaks Parallels Panel 9.x. The following errors are displayed in the /var/log/sw-cp-server/error_log file when Panel is trying to start:


2010-03-29 11:21:22: (log.c.75) server started
2010-03-29 11:21:22: (network.c.336) SSL: error:00000000:lib(0):func(0):reason(0)
...

Resolution: It is necessary to update Parallels Panel web-engine.

network programming in bash

(via shudder.daemonette.org)

Discusses the possibilities of using Bash for socket programming using /dev/tcp with file descriptors redirection.

Advance Linux Programming

(via www.advancedlinuxprogramming.com)

Advanced Linux Programming is published under the Open Publication License, Version 1, no options exercised.

If you're a developer already experienced with programming for the GNU/Linux system, are experienced with another UNIX-like system and are interested in developing GNU/Linux software, or want to make the transition for a non-UNIX environment and are already familiar with the general principles of writing good software, this book is for you...

Permanent SSH Tunnel Between Linux Servers

(via www.brandonchecketts.com)

I recently had a need to create a permanent SSH tunnel between Linux servers. My need was to allow regular non-encrypted MySQL connections over an encrypted tunnel, but there could be many other uses as well. Google can identify plenty of resources regarding the fundamental SSH commands for port forwarding but I didn’t ever find a good resource for setting up a connection and ensuring that it remains active, which is what I hope to provide here...

Comment