
Часто у меня есть команда терминала, которая выводит некоторые предлагаемые команды для выполнения следующими или путь к файлу среди многострочного текстового вывода.
Я хочу иметь возможность повторно использовать путь к файлу или команду.
Например
$ nativefier --name "Asana Personal" "https://app.asana.com"
Packaging app for platform darwin x64 using electron v1.6.6
App built to /Users/Vaughan/Asana Personal-darwin-x64
$ cd /Users<press-tab>/Vaughan/Asana Personal-darwin-x64
$ brew info postgres
...
If builds of PostgreSQL 9 are failing and you have version 8.x installed,
you may need to remove the previous version first. See:
https://github.com/Homebrew/legacy-homebrew/issues/2510
To migrate existing data from a previous major version (pre-9.0) of PostgreSQL, see:
https://www.postgresql.org/docs/9.6/static/upgrading.html
To migrate existing data from a previous minor version (9.0-9.5) of PostgreSQL, see:
https://www.postgresql.org/docs/9.6/static/pgupgrade.html
You will need your previous PostgreSQL installation from brew to perform `pg_upgrade`.
Do not run `brew cleanup postgresql` until you have performed the migration.
To have launchd start postgresql now and restart at login:
brew services start postgresql
Or, if you don't want/need a background service you can just run:
pg_ctl -D /usr/local/var/postgres start
$ pg ctl<press-tab>-D /usr/local/var/postgres start
решение1
По сути, это будет означать регистрацию всех сеансов работы с терминалом для сбора необходимой вам информации.
Для этого вы можете использовать программу script
(например, поместить script /tmp/myuseronlyreadablefile
в свой .zshrc
, или улучшить приглашение к использованиюscript
эту одну строку ввода в одном и том же файле журнала снова и снова, анализируя ее сразу после этого), а затем вы можете проанализировать сгенерированный файл журнала (отфильтровать вывод для всех путей) для виджета, который вы установили для автодополнение zsh.
Я не уверен, какие недостатки может иметь использование «скрипта» и сколько усилий это потребует от вас по сравнению со старым добрым «отметьте любой текст мышкой и просто вставьте его немедленно, щелкнув колесиком мышифункциональность.
решение2
Терминальные мультиплексоры, такие как tmux
и , screen
поддерживают копирование и вставку из сеанса, но если вы хотите сделать это без них или автоматически, вы можете использовать , tee
чтобы отправить вывод во временный файл, и использовать cut
, sed
и/или , grep
чтобы построить (а затем запустить) указанную команду.
Однако, поскольку вы, судя по всему, используете OSX, вы можете просто выделить текст и нажать ⌘C для копирования и ⌘V для вставки. (Если вы не ssh
в теме)