Use texto previamente impresso em um comando

1

Muitas vezes, eu terei um comando de terminal que gera alguns comandos sugeridos para executar o próximo, ou um caminho de arquivo entre a saída de texto de várias linhas.

Eu quero poder reutilizar o caminho do arquivo ou o comando.

Por exemplo,

$ 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
    
por vaughan 07.07.2017 / 10:56

2 respostas

1

Isso basicamente significaria registrar todas as sessões de terminal para capturar as informações desejadas.

Para fazer isso, você pode usar o programa script (por exemplo, colocar script /tmp/myuseronlyreadablefile no seu .zshrc ou aprimorar seu prompt para usar script nessa mesma linha de entrada no mesmo arquivo de log novamente , analisando-o imediatamente depois disso) e, em seguida, você analisaria o arquivo de log gerado (saída de filtro para todos os caminhos) para um widget definido para conclusão automática do zsh .

Não sei quais as desvantagens que o uso de 'script' pode ter e quanto esforço isso significará para você em comparação com o bom e velho marcar qualquer texto com o mouse e simplesmente inseri-lo imediatamente com um clique a funcionalidade da roda do meu mouse .

    
por 07.07.2017 / 11:38
1

Multiplexadores de terminal como tmux e screen suportam copiar e colar da sessão, mas se você quiser fazer isso sem um ou automaticamente, você pode usar tee para enviar a saída para um arquivo temporário, e use cut , sed e / ou grep para criar (e depois executar) o dito comando.

No entanto, como parece que você está usando o OSX, basta realçar o texto e pressionar ⌘C para copiar e ⌘V para colar. (A menos que você esteja em ssh 'd)

    
por 07.07.2017 / 15:35

Tags