Archive

Posts Tagged ‘cli’

CLI Usefullness

August 30th, 2009 Tim P. No comments

For the past year and a half I’ve been doing developement in a linux based enviroment, these tools and particularly these commands have become used frequently. If anyone has something useful, post it up!

Mercurial is a cross-platform, distributed revision control tool for software developers.

Easy way to view most recent changes:
Command: hg export tip | colordiff | less -R

Useful for: Quick code reviews, or just to peek at what you’ve recently done

Manipulating text files:

SED: (stream editor) is a Unix utility that (a) parses text files and (b) implements a programming language which can apply textual transformations to such files.

Command: sed ’s/\t/”,”/g;s/^/”/;s/$/”/;s/\n//g’ > filename.csv
In action: mysql -uuser -ppass DBNAME -e “SELECT foo FROM bar WHERE baz = ‘world’” | sed .. > output.csv

Explanation:

  • “s/\t/”,”/g;” – Search for tabs, replace with commas
  • “s/$/”/;” – Replace last of line with quote
  • “s/\n//g” – Remove newlines

Useful for: This is specifically used for converting MySQL results to csv. I build lots of mailing lists for my employer.

AWK: is a programming language that is designed for processing text-based data, either in files or data streams, and was created at Bell Labs in the 1970s

Command: awk ‘BEGIN {OFS=”|” FS=”|”}; {print $1, $3, $5}’ file.csv
Explanation:

  • OFS – Output field separator
  • FS – Field separator
  • Printing fields 1, 3, and 5

Useful For: Pulling text out of delimited list and re-organizing the data, quickly and gui-free

  • Share/Bookmark

Avimark and linux, finally can dump windows server

July 9th, 2009 Tim P. 6 comments

There’s probably not that many people that actually care about this, but it’s taken me a long time to get to this point, so if your a tech guy at a vet’s office, enjoy! I’ve been running this successfully for almost a year now.

WARNING: If you choose to do this, that’s your choice, read this through before even thinking of diving in. In other words, I am not responsible for ANYTHING that happens as a result of what YOU choose to do. I also assume your familiar with linux and the distro of your choosing, really, I won’t be explaining some things as this is already going to be lengthy.

Note: This may not be the most secure way to do things, but I feel it’s stronger than windows, I have better backups (flyback for gnome, and a few scripts I’ve written), and no one has “Administrator” access, except me of course.

For the past 2 years or so I’ve been the ‘Tech Guy’ at two vet offices in my “free” time.  I’ve had one Windows 2000 server, which was actually the most reliable, compared to the Windows Small Business Server 2003.  I’ve experienced more problems than I care to recall, let’s suffice it to say, the workstations in the larger office were unreliable on network, even after a network rebuild (replace and tested all cable, made sure machines were clean, running the server on a gigabit network connection, all fun stuff).  Finally it got to the point where I was spending all my free time there, no good.  I am far more comfortable on any linux box than a windows machine, so I decided to take the plunge and make it work, installing linux servers that is. It may sound easy, but even since the switch I’ve had many unexpected surprises.  

Read more…

  • Share/Bookmark