Вы столкнулись как минимум с двумя проблемами:
Псевдонимы не раскрываются, когда оболочка не интерактивна, если только параметр оболочки expand_aliases
не установлен с помощью shopt
.
.bashrc
обычно содержит конфигурацию для интерактивных оболочек, а не для скриптов (, то есть не -интерактивных оболочек ).
Есть несколько решений:
# Set expand_aliases option and add the alias (in your script)
shopt -s expand_aliases
alias oTools="/home/user/folder/oTools-cli"
# Create a function instead of an alias (in your script)
oTools() { /home/user/folder/oTools-cli "$@"; }
# Add /home/user/folder to your PATH (in your.profile)
PATH="/home/user/folder:$PATH"
Как рабочий -лайнер с учетом только описанных имён каталогов:
for dir in parent/*/; do printf "%s\n" "$dir"/*/ | sort -r | tail -n +2; done
будет список каталогов для удаления, а
for dir in parent/*/; do printf "%s\n" "$dir"/*/ | sort -r | tail -n +2 | xargs rm -rf; done
удалит их.