I have the below script to print all specified columns from the 1st to the 9th using printf to format, however I would like to print any columns thereafter the 9th column and I am unsure of how to do so
pwd=`pwd`
#Megabytes
max_size_1=`ls -ltr "$pwd" | grep -v "total" | awk '{print $1}' | sort -n | tail -1 | wc -m`
max_size_2=`ls -ltr "$pwd" | grep -v "total" | awk '{print $2}' | sort -n | tail -1 | wc -m`
max_size_3=`ls -ltr "$pwd" | grep -v "total" | awk '{print $3}' | sort -n | tail -1 | wc -m`
max_size_4=`ls -ltr "$pwd" | grep -v "total" | awk '{print $4}' | sort -n | tail -1 | wc -m`
max_size_5=`ls -ltr "$pwd" | grep -v "total" | awk '{$5=sprintf("%.0f M", $5/1024^2)} 1' | awk '{print $5}' | sort -n | tail -1 | wc -m`
ls -ltr "$pwd" | grep -v "total" | awk '{$5=sprintf("%.0f M", $5/1024^2)} 1' | eval "awk '{printf \"%$max_size_1-s %$max_size_2-s %$max_size_3-s %$max_size_4-s %$max_size_5-s %-3s %-3s %-3s %-6s\\n\", \$1, \$2, \$3, \$4, \$5, \$6, \$7, \$8, \$9}'"
Output is:
-rwxr-xr-x 1 informix informix 0 M Mar 1 13:45
-rwxr-xr-x 1 informix informix 0 M Mar 1 13:45
-rwxr-xr-x 1 informix informix 0 M Mar 1 13:46
-rwxr-xr-x 1 informix informix 0 M Mar 9 10:51
-rw-r----- 1 informix informix 0 M Mar 9 12:36
-rwxrwxrwx 1 informix informix 0 M Mar 9 13:01
What I would like:
-rwxr-xr-x 1 informix informix 0 M Mar 1 13:45 ls-ltrg
-rwxr-xr-x 1 informix informix 0 M Mar 1 13:45 ls-ltrk
-rwxr-xr-x 1 informix informix 0 M Mar 1 13:46 ls-ltrb
-rwxr-xr-x 1 informix informix 0 M Mar 9 10:51 ls-ltrm
-rw-r----- 1 informix informix 0 M Mar 9 12:36 split word
-rwxrwxrwx 1 informix informix 0 M Mar 9 13:01 test.sh
It should print all columns after nine even files or names that are split thereafter.