Categories
Command line Fu

How to randomly sample k lines from a file in *nix

You can use the shell to extract a random sample of lines from a file in *nix. The two commands you need are “shuf” and “head” (+ “tail” for CSV files with a header). The shuf command will randomly shuffle all the lines of its input. The head command will cut of the input after […]

Categories
Command line Fu

Log devices on your network

Fing logger (finglogger.sh): #!/bin/sh   FING_LOG_FILE=/path/to/fing.log   # append current public ip echo `date +"%Y/%m/%d %T"`";publicip;"`curl -s ipecho.net/plain`";;;" >> $FING_LOG_FILE   # append current fing output /usr/bin/fing -r1 -o log,csv,$FING_LOG_FILE,1000 –silent#!/bin/sh FING_LOG_FILE=/path/to/fing.log # append current public ip echo `date +"%Y/%m/%d %T"`";publicip;"`curl -s ipecho.net/plain`";;;" >> $FING_LOG_FILE # append current fing output /usr/bin/fing -r1 -o log,csv,$FING_LOG_FILE,1000 –silent […]

Categories
Command line Fu

Which files has a *nix process opened?

To list all files that are opened by a *nix process with a given pid, say 42, use the lsof command: (sudo) lsof -p 42 Of course, a process may have many files open. To list only files that have a name containing “log”, use the grep command: (sudo) lsof -p 42 | grep log […]

Categories
Command line Fu

Docker on Ubuntu VM running on Mac using Vagrant

Docker allows you to develop, ship and run any application, anywhere. The metaphor is that of the standard shipping container that fits on any ship, can be handled by any crane, and loaded onto any train or truck. In a previous post, I covered how to run Ubuntu on Mac using Vagrant. In this post, […]

Categories
Command line Fu

Running Ubuntu on Mac with Vagrant

Vagrant is cool: Vagrant provides easy to configure, reproducible, and portable work environments built on top of industry-standard technology and controlled by a single consistent workflow to help maximize the productivity and flexibility of you and your team. Furthermore: Vagrant stands on the shoulders of giants. Machines are provisioned on top of VirtualBox, VMware, AWS, […]

Categories
Command line Fu

Starting a web server and other PHP tricks

Start PHP webserver (in current directory): php -S localhost:8080 # starts http server on port 8080php -S localhost:8080 # starts http server on port 8080 Start PHP prompt (with illustrating example):

Categories
Command line Fu Systems

Easiest way to install a PostgreSQL/PostGIS database on Mac

Installing Postgres+PostGIS has never been easier on Mac. In fact, it is now an app! You download the app-file from postgresapp.com, place it in your Applications folder, and you’re done. Really. If you think that was over too fast If you think that was over too fast, there is one more thing you can do. […]

Categories
Command line Fu

Poor man’s wget

The command wget is useful, but unfortunately doesn’t come preinstalled with Mac. Yeah, you can install it of course, but if you’re doing it from source, the process has a few steps to satisfy all the dependencies; start by configure make’ing the wget source and work your was backwards until ./configure runs for your wget […]

Categories
Command line Fu

How to set environment variables for single process

In bash, you simply prefix a command with one or more XXX=”YYY” pairs, e.g. $ A="B" X="Y" python print_env.py … A=B X=Y$ A="B" X="Y" python print_env.py … A=B X=Y The code for print_env.py: import os for ev in os.environ: print “{0}={1}”.format(ev, os.environ[ev])

Categories
Command line Fu Fun and trivia

Playing with GraphViz and MathGenealogy data

Math in Genealogy is a great project (donate online). Sven K√∂hler from Potsdam, Germany has written a python script for visualizing the database, which I’m going to try. First step is to clone the git repo: $ git clone git@github.com:tzwenn/MathGenealogy.git$ git clone git@github.com:tzwenn/MathGenealogy.git His instructions are quite simple: $ ./genealogy.py –search 38586 # 30 seconds […]