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 ()

+15°/с к скорости спиннера

anonymous ()

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

Deleted ()

В debian прямо в репах есть

apt search thefuck
Sorting... Done
Full Text Search... Done
thefuck/stable 3.11-2.1 all
  spelling corrector of console commands
Yorween ()

А если у меня апт локнут, потому что в бэкграунде система лезет искать обновы, она разрулит? Если нет, то это куча мусора.

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

А если у меня компутера нет и я ее запускаю на Windows 3.11. Она разрулит? А если у ЛОРовца мозга нет. Она разрулит? Если мозг прибывлять не умеет, то она мне не нужна! Хе-хе-хе лизунчики-попрыгунчики!

Promusik ★★★★★ ()

Кажется, что новость нарушает пункт правил 5.1

Reset ★★★★★ ()

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

`fuck --yeah`

Почему не?

``` fuck --force ```

anonymous ()

А в чём состоит собственно новость?

Softwayer ★★ ()

А четыре года назад @Shaman007 посчитал новость про thefuck недостойной. Куда катится ЛОР?

i-rinat ★★★★★ ()

$ rm -rf / permission denied

➜ fuck

# sudo rm -rf / комп чист, хозяин

От души, выручила

anonymous ()

$ fuck

Seems like fuck alias isn't configured!

Please put eval «$(thefuck --alias)» in your ~/.bashrc and apply changes with source ~/.bashrc or restart your shell.

Or run fuck second time for configuring it automatically.

More details - https://github.com/nvbn/thefuck#manual-installation

$ fuck

fuck alias configured successfully!

For applying changes run source ~/.bashrc or restart your shell.

Ну если бы саму себя не чинила, был бы обосрамс, конечно.

ЗЫ: В арче тоже в репах лежит.

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

В убунте не чинит, там мантейнер вообще не положил /usr/bin/fuck

Aceler ★★★★★ ()

Что-то сегодня у линуксоидов день стеба. Вроде 1 сентября, а не 1 апреля.

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

Завтра в школу. В последний день детвора резвится.

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

Что-то сегодня у линуксоидов день стеба. Вроде 1 сентября, а не 1 апреля.

раньше эти праздники были противоположностями, но теперь их можно смело считать одним праздником, отмечаемым два раза в год!

anonymous ()

Почему-то перед прочтением был уверен, что эта хреновина на Расте написана. 🤠

anonymous ()

Fuck open-source software.

anonymous ()

Если она исправит rm -rf <какой-то ненужный каталог> на rm -rf /*, то полностью оправдает своё название.

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

Не, не пиши. Мне шуточки, а девченке лишний «пиар» не факт что нужен

anonymous ()
find /dev/girlfriends -type hetero | fuck
H3 ()

Забавная идея, но вне баловства не взлетит: проще поправить команду, чем набирать fuck, ждать и с чем-то соглашаться.

Гораздо прикольнее было бы автоматически реагировать на сфейлившуюся команду и сразу же предлагать исправление. Проблема в том, что основная масса правил thefuck’а реагирует не на имя команды, а на ключевые слова в выводе. А перехватывать вывод каждой команды по дефолту — ну такое себе. Опять же, годится только для баловства с слабоинтерактивными программами.

Кстати, что гораздо более важно, я нигде не нашёл внятного предупреждения о том, что оно вообще-то запускает последнюю команду повторно (чтобы, собственно, захватить вывод).

Можно попробовать интегрировать с tmux’ом…

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 2)

зочем?..

первый пример решается через «sudo !!» (ну теми кто хоть немного про шелл почитал)

а за второй пример она по-моему должна в лицо из монитора стрелять, как это ещё исправить?..

whereisthelinus ()

Требования python (3.4+)...

Ситуация со странным выбором названия проясняется...

enso ★★★★ ()

Капец тормозное. Проще руками исправить.

egorcod ()

Как софтина с таким угнетающе-агрессивно-мужланским названием до сих пор жива?

Deleted ()
Последнее исправление: Deleted (всего исправлений: 1)

apt-get

После истории с weboob могут забыть про этот usecase

В debian прямо в репах есть

Странно

grem ★★★★★ ()
Последнее исправление: grem (всего исправлений: 1)

fuck –yeah

Нужна ещё такая опция

fuck --it-all-and-fucking-no-regrets

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

Если перевести, то получится блядь. Т.е. агрессивно женское существо, ещё и с трипперами в комплекте.

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

Это как-то связано с тем, что ей сто лет в обед. Ума не приложу, что это делает в новостях.

t184256 ★★★★★ ()

Весёлая задумка. Вообще я против подобных штук, но здесь задумка реально интересная.

А вот как она справится с некорректно заданными параметрами кодирования ffmpeg? Она вообще претендует на интеллект, или работает по таблице шаблонных ошибок?

kirill_rrr ★★★★★ ()
$_sudo pacman -S thefuck
[sudo] пароль для arch: 
разрешение зависимостей...
проверка конфликтов...

Пакеты (6) python-colorama-0.4.1-1  python-decorator-4.4.0-1  python-psutil-5.6.3-1  python-pyte-0.8.0-2  python-wcwidth-0.1.7-3  thefuck-3.29-1

Будет загружено:  0,60 MiB
Будет установлено:  3,41 MiB

:: Приступить к установке? [Y/n]
amd_amd ★★ ()

куда смотрят модераторы?! мат же!

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