Как избежать опечатки при выполнении удаления

1,00
р.
Иногда мне необходимо вручную обновить написанные мной программы на своем сервере. Процесс обновления выглядит следующим образом:
Копирую выполняемый файл на сервер командой scp. Захожу на сервер через ssh в терминале. Перехожу в папку с исполняемым файлом. Останавливаю приложение, если необходимо. Удаляю старую версию программы. Копирую новую в нужную директорию. Запускаю обновленное приложение.
Программу удаляю с ресурсными файлами примерно так:
rm -rf ./
Проблема в том, что однажды я опечатался, случайно добавив пробел между точкой и обратной косой чертой. Соглашусь, что лучше все это автоматизировать, но иногда есть необходимость сделать что–то подобное руками.
Подскажите, что бы вы сделали, чтобы отловить такую или подобные ошибки и не допустить выполнение нежелательного удаления?

Ответ
Утилита rm из более новых coreutils такого не допустит:
$ rm -rf / rm: it is dangerous to operate recursively on '/' rm: use --no-preserve-root to override this failsafe
$ rm -rf . rm: refusing to remove '.' or '..' directory: skipping '.'
Проверить man rm:
--preserve-root do not remove `/' (default)
В этом топике более подробно. Может самое время, запланировать обновление.

Чтобы максимально снизить вероятность опечатки, не делайте того, что может к ней привести. Никогда не пользуйтесь неявным указанием путей, таких как ./ или ./*, т.е. как минимум выйти из текущего каталога $ cd ...
Всегда проверяйте, что же будет удалено, хотя бы так: $ #rm -rf myfolder /TabTab и если только ничего подозрительного нет, как например:
bin/ etc/ proc/ usr/
, то HomeDelEnter.