#!/bin/bash
IFS=$'\n'
find ~/Desktop -mindepth 1 -depth | while read f; do
new="$(dirname "$f")/$(basename "$f" | sed 's/ *$//')"
[[ "$f" != "$new" ]] && mv "$f" "$new"
done
- Sem
IFS=$'\n'
, as variáveisf
lidas por| while read f
não teriam espaços iniciais ou finais - A alteração de
sed 's/ *$//'
parased 's/^ *//;s/ *$//
também removeria os espaços desde o início