≡ Menu

Command Line Tips and Hacks

Command line tricks, tools, tips and hacks to help you get the most out of the shell prompt in Linux, *BSD, Apple OS X and Unix like operating systems ( rss feed ) .

The HTTP 2xx class of status codes indicates the action requested by the client was received, and processed successfully. HTTP/1.1 200 OK is the standard response for successful HTTP requests. When you type www.cyberciti.biz in the browser you will get this status code. The HTTP/1.1 206 status code allows the client to grab only part of the resource by sending a range header. This is useful for:

  1. Understanding http headers and protocol.
  2. Troubleshooting network problems.
  3. Troubleshooting large download problems.
  4. Troubleshooting CDN and origin HTTP server problems.
  5. Test resuming interrupted downloads using tools like lftp or wget or telnet.
  6. Test and split a large file size into multiple simultaneous streams i.e. download a large file in parts.

Reading an IP address in a shell script requires many time and various Linux distributions stores IP address in different text files. So most of us end up writing shell pipes/scripts to get the information using ifconfig | grep 'inet addr:'| grep -v '' | cut -d: -f2 | awk '{ print $1}' syntax. There is an alternative to ifconfig+shell pipe hack - ifdata command. It is a little know tool that can be used to check for the existence of a network interface and find out info about your interface such as IP, netmask, MTU and much more. No need to write shell pipes and fetch information via ifconfig or ip command. This command is designed to be easily used by a shell script.

Most sysadmin will run low on disk space. Users will demand more space and you need to free space. You will find out files that's a waste of space and delete it or move to an archive medium. But, how do you find the right files to delete that can help recover maximum space? Say hello to agedu tool (pronounced as 'age dee you') - it scans a directory tree and produces reports about how much disk space is used in each directory and subdirectory, and also how that usage of disk space corresponds to files with last-access times a long time ago. In other words, this command might help you to free up disk space.

Do you need a simple open source cross-platform command line tool that converts web pages and HTML to a PDF file? Look no further, try wkhtmltopdf.

The remark command is a little know tool that can be used to color syslog file as well as output of of programs such as ping, traceroute, and much more.

Most embedded Linux / BSD systems such as routers, servers and nas devices comes with console interface (serial port with RS-232). BIOS can uses this, and after boot BIOS screen I/O is redirected so that you can use the device. RS-232 is also used for communicating to headless server, where no monitor or keyboard is installed, during boot when operating system is not running yet and therefore no network connection is possible. You need to use a serial cable between your computer and embedded system or server. In this post I will cover five conman utilities used for serial communication under Linux / Unix / *BSD and Mac OS X.

The pv command allows you to see the progress of data through a pipeline. It provides the following info:

  1. Time elapsed
  2. Percentage completed (with progress bar)
  3. Current throughput rate
  4. Total data transferred
  5. ETA

Process identifier (PID) is a number used by Linux / Unix kernels (and Windows operating systems) to identify a process. Usually, new processes are created using the fork() system call. Each PID (or so called tasks) can be monitored under Linux. In this quick tutorial, I will explain how to use the pidstat command for monitoring individual tasks currently being managed by the Linux kernel.

Everything is a file under Linux and ls* and friends can help you to dig out more information from the system than you originally thought.

Using the same password on different servers allows attackers to access your accounts if cracker manage to steal your password from a less secure server. This is true for online website accounts too. So solution is to create unique passwords for server accounts like your email, sftp and ssh accounts. General guideline to create a strong and unique password is as follows: