Wie kann ich die Ausgabe eines Befehls in meine Zwischenablage leiten und wieder einfügen, wenn ich ein Terminal verwende? Zum Beispiel:
cat file | clipboard
Wie kann ich die Ausgabe eines Befehls in meine Zwischenablage leiten und wieder einfügen, wenn ich ein Terminal verwende? Zum Beispiel:
cat file | clipboard
Nur um einen Randfall abzudecken:) und weil der Fragentitel (zumindest jetzt) fragt, wie man die Ausgabe eines Befehls direkt in die Zwischenablage kopiert.
Oft finde ich es nützlich, die Ausgabe des Befehls zu kopieren, nachdem er bereits ausgeführt wurde und ich den Befehl nicht noch einmal ausführen will oder kann.
Für dieses Szenario können wir entweder gdm oder ein ähnliches Mausprogramm verwenden und mit der Maus auswählen. apt-get install gdm
und dann entweder der Rechtsklick oder die Kombinationen Strg+Umschalt+c und Strg+Umschalt+v zum Kopieren und Einfügen im Terminal
Oder, was für mich die bevorzugte Methode ist (da die Maus innerhalb eines Fensters nicht richtig auswählen kann, wenn Sie mehrere Fenster nebeneinander haben und mehr als eine Zeile auswählen müssen), können wir mit tmux in den tmux-Puffer kopieren, indem wir die Standardfunktionen [ , Leertaste , zum Auswählen bewegen , Enter oder einen Codeblock auswählen. Dies ist auch besonders nützlich, wenn man sich in einer der Lanes des Cli-Multiplexers wie tmux befindet UND einen Haufen Text auswählen muss, aber nicht die Zeilennummern (mein Vim-Setup rendert Zeilennummern)
Danach können Sie den Befehl verwenden:
tmux save-buffer - | xclip -i
Sie können natürlich auch einen Alias vergeben oder direkt in der tmux-Konfigurationsdatei binden
Dies soll Ihnen nur eine konzeptionelle Antwort für den Fall geben, dass es nicht möglich ist, den Befehl erneut auszuführen. Wenn Sie spezifischere Code-Beispiele benötigen, lassen Sie es mich wissen
Prost
Mit sudo-Rechten:
echo '#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
from tkinter import Tk
r = Tk()
r.withdraw()
r.clipboard_clear()
data = ""
for i in sys.stdin:
data = data + i
r.clipboard_append(data)
r.update()
r.destroy()' | sudo tee /usr/bin/copy > /dev/null
sudo chmod +x /usr/bin/copy
Alternativ auch ohne sudo-Rechte (nur für einen Benutzer):
echo '#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
from tkinter import Tk
r = Tk()
r.withdraw()
r.clipboard_clear()
data = ""
for i in sys.stdin:
data = data + i
r.clipboard_append(data)
r.update()
r.destroy()' > ~/.local/bin/copy
chmod +x ~/.local/bin/copy
Verwendung:
echo "hi" | copy
Das sieht umständlich aus. Was sind die Vorteile im Vergleich zu bestehenden Antworten, die xsel verwenden?
Ich würde sagen, dass eine einzige eigenständige xsel-Binärdatei nichts im Vergleich zu dem riesigen Python3-Framework ist. Manche Leute haben vielleicht schon xsel installiert, aber nicht python3. Hinzu kommt, dass Ihr Python-Skript vom tkinter abhängt, der vielleicht auch nicht installiert ist. Wenn die Motivation dieser Antwort ist, etwas mit weniger Abhängigkeiten bereitzustellen, dann denke ich, dass es genau das Gegenteil ist.
Hier sind zwei einfache Lösungen mit nur zwei Codezeilen in jeder Methode!
Es muss keine zusätzliche Software installiert werden (und letztere kann eine Vielzahl von Abhängigkeiten mit sich bringen, von denen einige möglicherweise Sicherheitsprobleme aufweisen)
Hinweis: Die 2. Methode no mit dem nano-Editor in Debian arbeiten.
sudo printf "\n#$(date)" >> /path/intended_file
#
beschädigt keine Datei.sudo gedit /path/intended_file
dann kopieren Sie Datum in die Zwischenablage im Editor und fügen es an einer beliebigen Stelle ein.uniqueFile
Datei, die sich irgendwo auf der Festplatte befindet, in eine delete.txt
archivo:sudo find / -iname 'uniqueFile' >> delete.txt
gedit delete.txt
und kopieren Sie (Strg-C) den markierten gewünschten langen Pfad aus dem Editor in die Zwischenablage. Oder Sie können auch den Terminal-Nano-Editor verwenden (der allerdings das "Standard"-Strg-C nicht unterstützt).delete.txt
ist bereits Ihre persönliche Protokolldatei:rm delete.txt
oder mv delete.txt memo-uniqueFile.txt
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.
0 Stimmen
Mögliche Duplikate von Leitung zu/von Zwischenablage
0 Stimmen
Mögliche Duplikate von superuser.com/questions/104981/
0 Stimmen
Ich habe gerade eine ähnliche Frage gestellt, da ich xclip nicht zum Laufen bringen kann, wenn ich mich von Git Bash unter Windows in Ubuntu einlogge: stackoverflow.com/q/60117294/470749
5 Stimmen
Speichern Sie den Inhalt der Datei in der Zwischenablage.
apt install xclip
ycat file | xclip -sel clip