Может быть, вы не знали, но есть программа с выразительным названием The Fuck. Написана на Питоне, 90 тысяч звезд, работает следующим образом.

Предположим, вы запустили что-то в терминале, но получили ошибку. Не указан такой-то флаг, это депрекейтед, то-се. Если ввести fuck, то программа считает предыдущую команду и повторит ее, но на этот раз правильно.

Звучит непонятно, так что рассмотрим пример. Скажем, я сделал новую ветку и хочу запушить ее на сервер:

git checkout -b ssl-no-validation
git add .
git commit -m "some changes"
git push

Вот что я получу:

fatal: The current branch ssl-no-validation has no upstream branch.
To push the current branch and set the remote as upstream, use

    git push --set-upstream origin ssl-no-validation

Гит прекрасно понял, что я имел в виду, но предлагает ввести команду повторно. Если же ввести fuck, то утилита считает bash_history и выполнит то, что нравится Гиту.

В последнем Гите это починили: теперь git push делает апстрим самостоятельно. Однако долгое время меня выручал fuck.

Сегодня я им не пользуюсь, но вспомнил вот почему. Программа хорошо расширяется регулярками, и народ собрал целую кладезь fuck-рецептов. Получилась своего рода энциклопедия бредовых случаев. Мне кажется, они достойны изучения просто затем, чтобы знать, как делать не надо. Если же ваша программа оказалась среди рецептов – это нужно быстро исправить.