diff --git a/README.md b/README.md index 0044b6a..23f5414 100644 --- a/README.md +++ b/README.md @@ -147,6 +147,10 @@ Scope: - Know about `cut`, `paste`, and `join` to manipulate text files. Many people use `cut` but forget about `join`. +- Know about `wc` to count newlines (`-l`), characters (`-m`), words (`-w`) and bytes (`-c`). + +- Know about `tee` to copy from stdin to a file and also to stdout, as in `ls -al | tee file.txt`. + - Know that locale affects a lot of command line tools in subtle ways, including sorting order (collation) and performance. Most Linux installations will set `LANG` or other locale variables to a local setting like US English. But be aware sorting will change if you change locale. And know i18n routines can make sort or other commands run *many times* slower. In some situations (such as the set operations or uniqueness operations below) you can safely ignore slow i18n routines entirely and use traditional byte-based sort order, using `export LC_ALL=C`. - Know basic `awk` and `sed` for simple data munging. For example, summing all numbers in the third column of a text file: `awk '{ x += $3 } END { print x }'`. This is probably 3X faster and 3X shorter than equivalent Python. @@ -309,6 +313,10 @@ A few examples of piecing together commands: - `nc`: network debugging and data transfer +- `socat`: socket relay and tcp port forwarder (similar to `netcat`) + +- `slurm`: network trafic visualization + - `dd`: moving data between files or devices - `file`: identify type of a file @@ -345,6 +353,8 @@ A few examples of piecing together commands: - `cssh`: visual concurrent shell +- `rsync`: sync files and folders over SSH + - `wireshark` and `tshark`: packet capture and network debugging - `host` and `dig`: DNS lookups