Jak wybrać (skopiować) wyjście w terminalu bez myszy


10

Wygląda to na typowy sposób, w jaki masz trochę danych wyjściowych w terminalu i jeśli chcesz wybrać określoną frazę, używasz myszy do jej skopiowania, ale czy jest jakiś sposób na wybranie bez użycia myszy? Na przykład, wpisuję lsi otrzymuję listę plików i chcę wybrać drugi plik (drugi wiersz), czy istnieje sposób na skopiowanie nazwy bez użycia myszy?


Odpowiedzi:


10

Za pomocą tmux:

Używam tmuxw trybie vi:

  1. Przejdź do trybu kopiowania (w mojej konfiguracji Prefix+ escapedomyślny prefiks to Ctrl+ b)
    • W pliku konfiguracyjnym ( ~/.tmux.conf):bind Escape copy-mode
  2. Poruszaj się (za pomocą strzałek)
  3. Wybierz pożądany wynik (Rozpocznij wybór za pomocą Space)
    • W mojej konfiguracji v:bind-key -T copy-mode-vi y send-keys -X begin-selection
  4. Naciśnij, Enteraby skopiować tekst.
    • W mojej konfiguracji y:bind-key -T copy-mode-vi y send-keys -X copy-selection
  5. Naciśnij Prefix+, paby wkleić.

wprowadź opis zdjęcia tutaj

Utwórz także powiązanie klucza takie jak to:

bind C-c run "tmux save-buffer - | xsel -bi"

Aby zapisać bufor w schowku systemowym, naciśnij Prefix+ Ctrl+ c.

Dodałem moją konfigurację, ponieważ bardziej przypomina vim niż domyślna konfiguracja.


Za pomocą poleceń:

Oto co robię:

  1. Uruchom polecenie (np . ls -1:)
  2. Przetwórz wyjście, aby uzyskać pożądany rezultat
  3. Pip to xsel -bi

W twoim przykładzie:

$ ls -1 | sed -n 2p | xsel -bi
  • ls -1 wypisuje wyjścia w jednym wierszu
  • sed -n 2p dostać drugą linię
  • xsel został użyty do skopiowania końcowego wyniku do schowka.

Jeśli uruchomienie komendy trwa zbyt długo, najpierw zapisz dane wyjściowe w pliku, a następnie przetworz dane wyjściowe:

command > output
head -10 output | whatever | xsel -bi

0

Najpopularniejsze emulatory terminali Linux nie mogą tego zrobić bezpośrednio. Są jednak dwa, o których jestem świadomy.

Tym, który istnieje od dłuższego czasu, jest Termit. Jest to jednak raczej spartańskie (nie można konfigurować skrótów klawiaturowych, nie ma wielu zakładek).

Teraz jest drugi, który ma te funkcje o nazwie Mantid (które bezwstydnie tutaj reklamuję :)):

https://github.com/omgold/mantid-term

Jednak nie ma kompilacji Ubuntu, ale jeden Arch i RPM. Możesz jednak spróbować zbudować RPM i przekonwertować go na deb za pomocą Alien.


Chciałbym spróbować mantid, ale nie mogę znaleźć żadnego samouczka ani instrukcji. Czy jest tam jakaś dokumentacja? Dobrze byłoby wiedzieć przynajmniej, w jaki sposób spełnia on funkcje wymagane w pytaniu.
Luís de Sousa,

Istnieje strona man („man mantid”), aw katalogu / usr / share / mantid znajdują się przykładowe pliki konfiguracyjne. Strona podręcznika głównie dokumentuje opcje konfiguracji, a aktywne skróty klawiszowe można sprawdzić w pliku konfiguracyjnym.
omgold
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.