Check These Out
This shows every bit of information that stat can get for any file, dir, fifo, etc. It's great because it also shows the format and explains it for each format option.
If you just want stat help, create this handy alias 'stath' to display all format options with explanations.
$ alias stath="stat --h|sed '/Th/,/NO/!d;/%/!d'"
To display on 2 lines:
$ ( F=/etc/screenrc N=c IFS=$'\n'; for L in $(sed 's/%Z./%Z\n/'
gg puts the cursor at the begin
g? ROT13 until the next mov
G the EOF
Useful for examining hostile processes (backdoors,proxies)
Something to stuff in an alias when you are working in multiple environments. The double-pipe OR will fall through until one of the commands succeeds, and the rest won't be executed. Any STDERR will fall out, but the STDOUT from the correct command will bubble out of the parenthesis to the less command, or some other command you specify.
Not so much handy by itself, but very nice in shell scripts.
This makes you a handy ncurses based checklist. Much like terminal installers, just use the arrow keys and hit 'Space' to adjust the selections. Returns all selected tags as strings, with no newline at the end. So, your output will be something like:
"one" "two" "three" "four" "etc"
For those who prefer bash expansion over gratuitious typing:
$ whiptail --checklist "Simple checkbox menu" 12 35 3 $(echo {one,two,three,four}" '' 0"} )
Things to note:
The height must includes the outer border and padding: add 7 to however many items you want to show up at the same time.
If the status is 1, it will be selected by default. anything else, will be deselected.
Converts any number of seconds into days, hours, minutes and seconds.
sec2dhms() {
declare -i SS="$1"
D=$(( SS / 86400 ))
H=$(( SS % 86400 / 3600 ))
M=$(( SS % 3600 / 60 ))
S=$(( SS % 60 ))
[ "$D" -gt 0 ] && echo -n "${D}:"
[ "$H" -gt 0 ] && printf "%02g:" "$H"
printf "%02g:%02g\n" "$M" "$S"
}
swap out "80" for your port of interest. Can use port number or named ports e.g. "http"