I want to accomplish this in sh, however if the capability exists only in other shells elsewhere that's acceptable.
% df -kh
Filesystem size used avail capacity Mounted on
...
/dev/dsk/c0t0d0s1 103G 102G 23M 100% /export/DISK15
...
# output truncated for brevity
my objective is to create a script to filter and print all entries in a df -kh output:
- commands available to
!/bin/sh - preferred
- where the % value in the capacity column is greater than 85%
- i want the resulting output to print the original entry from
df -k output
to contain the filesystem capacity and mount-point
- also I'd like to
sort by alphanumeric character contained in the Mounted on column, this is nice to have, not necessary** I didn't have much success with the
sort -k 6,6d or
6,6d operands
I'm relatively new to the UNIX environment, windows guy by trade so get the boos and jeers out of your systems up front.
Back to business:
I was thinking
foreach statements, not sure how to feed each line to the
foreach statement where a
carriage return/or new line character would be used as the field separator in foreach input;
awk coupled with
gt statements but not really sure if that's the best tool. I suspect maybe
test statements gotta be used, but I'm drawing blanks as to how to accomplish this and put it together since I have very limited exposure to scripting. I have no idea how to designate carriage returns/new line characters as the field separator for
foreach input, remember I'm new I've read documentation for all over so my direction could be severely misguided or even out of correct context.
here are my initial thoughts, this could clarify my intentions
df -kh
either pipe output to input for "
foreach command statement" or redirect to temp file,
<< EOFs (here document) acceptable, probably preferred for conservation of space each time command is run to avoid generating file backlog
either temp file or
<< EOF provide
foreach inputs to be taken for action, at which point I want the % value in the capacity column compared with
gt statement against value of 85%.
Then any of the original entries whose capacity column value evaluates as true for the
gt 85% comparison, I want those printed and ultimately sorted by alphanumeric value of the mountpoint.
Please let me know if you can help and/or if you want me to do any further footwork, be specific in any following requests so we can get it done right and with minimal delay. Thanks a bunch in advance.
your friendly neighborhood programmar!