Tool tests on the fast track

Jq 1.5

JSON stream editor


License: MIT

Alternatives: Sed, Awk

Many programs rely on JSON when it comes to configuring, exchanging, and storing data. Users who want to process JSON files in the shell will be interested in taking a look at Jq. The tool, which is implemented in C, reads files from the standard import, and filters and outputs them in a user-defined format. It does not have any dependencies and is immediately ready for action after downloading and setting the x flag.

When calling the program, you need to specify a data stream. Command-line parameters influence the way that jq filters the input. For example, -s tells the tool not to process each object as it arrives, but first to read everything. In contrast, the -R parameter tells jq to expect the data in raw format and pass the data to the filter as simple strings, line by line. The tool interprets spaces as separators. The manual recommends quoting parameters with single quotes to avoid the shell interpreting Jq control elements.

The filtered results are sent to standard output, where again blanks act as separators. Various options format the output, color-highlight various messages, or use tabs as separators. The comprehensive documentation describes all the options in detail and uses examples to explain how users can create simple or advanced filters with regular expressions.

(5 Stars) Jq reliably filters JSON files in the shell. Users are advised to consult the excellent manual before starting to use the tool.

Pen 0.30.0

Load balancer


License: GPLv2

Alternatives: Balance, LVS

On Linux, Windows, OS  X, FreeBSD, HP-UX, and Solaris, the Pen load balancer fields requests for TCP and UDP protocols and forwards them to the hosts defined on launching the tool; it supports both IPv4 and IPv6.

To set up simple load distribution, users specify an address and port, on which Pen expects requests after the pen command. This is then followed by a list of target servers, for which you need to state the IP address, port, and maximum permissible number of connections. All of these values are separated by colons, for example,

Pen manages the incoming requests in a table that can handle up to 2,048 clients by default. The -c option lets you modify this value. Connections that have not been used for a long time are automatically removed to create space for new ones. If a computer fails, Pen contacts the remaining systems and ensures that requests are directed to the servers with the lowest load at the time.

The archive also includes the penctl tool, which lets admins manage load balancers at run time. It reports the current load status, modifies the parameters of the target systems, or excludes clients from access in a targeted way.

(4 Stars) You should test Pen in your own environment. Because the man page only comes with a couple of application examples, this can be a question of trial and error.

PingChecker 15.8.16

Ping for multiple computers


License: GPLv3

Alternatives: Nagios, Monitorix

To test whether a computer is reachable on the network, most users resort to ping. However, if you want to test multiple systems in one fell swoop, you can use PingChecker instead. The tool accepts computer names or IP addresses as input, checks whether they are reachable, and summarizes the results in a useful overview.

The current version of the Python tool contains a GUI version in addition to the command-line version. Users can type a list of computers to test manually in either version, or they can pass in a list as a text file. Manual entry in the graphical user interface is restricted to 10 addresses. PingChecker tests all the stated systems, transmitting four pings in each case. At the command line, users can follow the tool's actions live and in color – computers that are reachable are displayed in green, and those that are unreachable are shown in red.

The graphical interface shows the overall results in a new dialog. Additionally, PingChecker creates two text files, ping_results.txt and ping_results.csv, which makes it easy to process the results downstream in a database or spreadsheet.

(4 Stars) PingChecker gives you a quick and uncomplicated approach to checking the availability of multiple systems. Most appreciated is the fact that PingChecker automatically writes its results to two text files, which are easily processed downstream.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Programming Snapshot – Go Network Diagnostics

    Why is the WiFi not working? Instead of always typing the same steps to diagnose the problem, Mike Schilli writes a tool in Go that puts the wireless network through its paces and helps isolate the cause.

  • Pinger

    The Pinger network monitoring tool uses ping to look for switches and estimate cable lengths.

  • Tool Tips

    We test DK Tools 4.2.2, Midnight Commander 4.8.15, Datamash 1.1.0, F3 6.0, Sauvegarde 0.0.7, and WackoWiki 5.4.3.

  • Command Line: Network Diagnostic Tools

    Linux has the right tools to track down network errors and open the way for data packets.

  • Tool Tips

    Mobiki wiki engine, jEdit cross-platform text editor, youtube-dl movie downloader, and Inadyn compact DDNS client.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More