LINUX.ORG.RU

The Fuck

 , , , ,


4

2

Да-да, вы не ослышались. Именно так - the fuck - называется эта консольная утилита, сырцы которой можно найти на гитхаб.

Эта волшебная утилита делает одну очень полезную работу - исправляет ошибки в последней выполненной команде в консоли.

Примеры

➜ apt-get install vim
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

➜ fuck
sudo apt-get install vim [enter/↑/↓/ctrl+c]
[sudo] password for nvbn:
Reading package lists... Done
...

или так

➜ git push
fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use

    git push --set-upstream origin master


➜ fuck
git push --set-upstream origin master [enter/↑/↓/ctrl+c]
Counting objects: 9, done.
...

Требования

  • python (3.4+)
  • pip
  • python-dev

Установка

OS X

brew install thefuck

Ubuntu / Mint

sudo apt update
sudo apt install python3-dev python3-pip python3-setuptools
sudo pip3 install thefuck

FreeBSD

pkg install thefuck

ChromeOS

crew install thefuck

На других системах

С помощью pip

pip install thefuck

Полезные опции

Для работы без запросов на подтверждения

fuck --yeah

Для выполнения рекурсивно до достижения результата

fuck -r

>>> Подробности

★★★★★

Проверено: jollheef ()

Считаю, что это программа месяца. Спасибо за новость.

anonymous ()

➜ fuck
git push --set-upstream origin master [enter/↑/↓/ctrl+c]
Counting objects: 9, done.
...

И хренак! Оно пушит изменения в origin, а тебе надо в другой remote. И хорошо, если история изменений линейная, и можно потом исправить. А если там rebase был и история изменена, git будет ругаться. И тогда что, опять «fuck» и теперь уже push с ключём "-f"?

Нет, ребята, консольный интерфейс не для дебилов создавали, предполагалось, что пользователь в адеквате, и изучил матчасть прежде чем по клавиатуре бренчать.

seiken ★★★★★ ()

волшебная утилита делает одну очень полезную работу

Кто-то снова изобрёл DWIM? Уже было в симпсонах лиспе.

no-such-file ★★★★★ ()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от no-such-file

Кто-то снова изобрёл DWIM?

$ rm *~
rm: невозможно удалить '*~': Нет такого файла или каталога
$ fuck
rm 2* [enter/↑/↓/ctrl+c]
rm: невозможно удалить '2*': Нет такого файла или каталога
$ fuck
No fucks given

Как-то плохо переизобрели.

monk ★★★★★ ()
Ответ на: комментарий от no-such-file

Не так уж плохо, оригинальный DWIM сделал бы rm *

Так и я про то же. Даже воспроизвести оригинальное поведение не смогли (подбирать маску так, чтобы хоть один файл под неё попадал)

monk ★★★★★ ()
Ответ на: комментарий от monk

Как-то плохо переизобрели.

Не знаю, у меня мелкие опечатки исправляет zsh-completions (или zsh-lovers, не помню). Вообще, самый чёткий шелл имхо. И не надо печатать, к примеру ls -la, достаточно la.

fehhner ★★★★★ ()
Ответ на: комментарий от anonymous

А вот пару лет назад мне -20 влепили на одно только упоминание этой команды.

anonymous (01.09.19 17:07:37)

тебе прострелили колено и тебя больше не ведёт дорогой регистранта?

darkenshvein ★★★★★ ()
Ответ на: комментарий от darkenshvein

Снова меня Хаос призвал, навеки анона в пакет заковал!

anonymous ()
Ответ на: комментарий от seiken

Нет, ребята, консольный интерфейс не для дебилов создавали, предполагалось, что пользователь в адеквате, и изучил матчасть прежде чем по клавиатуре бренчать.

не неси своим заблуждения в массы так нарочито.

system-root ★★★★★ ()

Да-да, вы не ослышались.

А <the suck> нет случаем утилиты?

anonymous ()
Ответ на: комментарий от anonymous

реквестирую православный аналог «cheeki-breeki»

Тогда уж «chiki-briki»

LINUX-ORG-RU ★★ ()
Ответ на: комментарий от anonymous

Ну так удали la из rc-файла и твой zsh станет ниочёмным.

Но зачем бы я это делал? К нему пакетом идёт отличный конфиг + при первом запуске спрашивает про настройки. Да и сам по себе очень хороший шелл.

fehhner ★★★★★ ()
Последнее исправление: fehhner (всего исправлений: 1)
Ответ на: комментарий от anonymous

Но это есть у любого вменяемого шелла. У Баш, например. Это не вича зсш.

Там есть и цвета изкоробки, и автодополнения и куча всего: https://ohmyz.sh/

fehhner ★★★★★ ()

...и чего только в Linux-е не напридумывают.... Остаётся ждать консоли, управляемой чисто русским матом + феней :D.

dv76 ★★★★ ()

Оу, фуцк! Это именно то, что нужно мне сейчас.

Deleted ()
Ответ на: комментарий от dv76

Остаётся ждать консоли, управляемой чисто русским матом + феней

Не совсем консоль (вернее совсем не консоль) но есть уже

https://yopta.space/

anonymous ()

Некоторое время пользовался, потом перестал. Она исправляет, ЕМНИМЭ, последнюю команду в .bash_history, а не последнюю в текущей консоли.

Miguel ★★★★★ ()

My name is メタプログ のキラー, and I pronounce "fuck" as 性交する

Куны и тяны, я тут проектирую программу facialize для восстановления дефейснутых сайтов, VPN-тоннель titfuck и систему обнаружения вторжений wronghole. Последняя пока не обнаруживает вторжения, но уже способна, с характерным шипящим звуком, исторгать сжатые архиватором Попова бинарные логи при полностью выключенном компьютере.

Для реализации своих революционных проектов я собираюсь создать аудиовизуальный язык программирования на основе VR-хентая с нескучными обоями, где можно грабить корованы. Уже готов прототип блока завершения процедуры: https://cs9.pikabu.ru/post_img/2016/09/26/11/1474917237143621754.jpg

Принимаются добровольные пожертвования в виде сухих салфеток, влажных салфеток, стирального порошка с энзимами для выведения белковых пятен и выделенной оптической линии до сервера Двача.

Главный этап уже пройден: к двери моей комнаты прикручен шпингалет. А то в Oculus Rift не видно, как заходит мамка и застает меня за процессом разработки, иногда перед самым коммитом.

Bagrov ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.