handle spaces in names..

This commit is contained in:
q
2018-10-25 20:49:26 +03:00
parent a572f0334b
commit 7b7807a979

View File

@@ -85,6 +85,7 @@ for (( i=1; i<=$#; i++ )); do
[[ "${!i}" = "-s" ]] && { SUMMARY=1; continue; } [[ "${!i}" = "-s" ]] && { SUMMARY=1; continue; }
what+=( "${!i}" ) what+=( "${!i}" )
done done
[[ -z "${what[@]}" ]] && what="." [[ -z "${what[@]}" ]] && what="."
# If formatting requested, do only that: # If formatting requested, do only that:
if [[ "$FORMAT" -eq 1 ]]; then if [[ "$FORMAT" -eq 1 ]]; then
@@ -107,16 +108,18 @@ fi
[[ "$COUNT" -eq 1 ]] && NUMBERS="$NUMFORMAT$NUMFORMAT" [[ "$COUNT" -eq 1 ]] && NUMBERS="$NUMFORMAT$NUMFORMAT"
[[ "$COUNT" -ne 1 ]] && NUMBERS="$NUMFORMAT" [[ "$COUNT" -ne 1 ]] && NUMBERS="$NUMFORMAT"
[[ "SUMMARY" -eq 1 ]] && FORMAT="$NUMBERS\n" [[ "SUMMARY" -eq 1 ]] && FORMAT="$NUMBERS\n"
[[ "SUMMARY" -ne 1 ]] && FORMAT="$NUMBERS %s\n" [[ "SUMMARY" -ne 1 ]] && FORMAT="$NUMBERS"
if [[ "$SUMMARY" -eq 1 ]]; then if [[ "$SUMMARY" -eq 1 ]]; then
# Display one line # Display one line
processfolder "${what[@]}" | xargs printf "$FORMAT" processfolder "${what[@]}" | xargs printf "$FORMAT"
echo ''
else else
# One size for each argument # One size for each argument
for dir in "${what[@]}"; do for ((i=0; i<"${#what[@]}"; i++)); do
printf "%s %s\n" "$( processfolder "$dir" )" "$dir" | xargs printf "$FORMAT" processfolder "${what[$i]}" | xargs printf "$FORMAT"
echo "${what[$i]}"
done done
fi fi