Text kann nicht vom Terminal in externe Programme kopiert werden

Text kann nicht vom Terminal in externe Programme kopiert werden

Ziel: Ich möchte meinen auf dem AWS-Server generierten öffentlichen SSH-Schlüssel auf mein GitHub-Konto kopieren.

Ich habe wenig Erfahrung mit Ubuntu.
Ich verwende den SSH-Befehl von meinem Laptop, um eine Verbindung zum AWS-Server herzustellen.
Das Betriebssystem sowohl auf meinem Laptop als auch auf dem AWS-Server ist Ubuntu Trusty Tar 14.04.

ssh -i /etc/ssh/aws_myhosts.pem [email protected]

Das funktioniert.

Ich möchte den Inhalt von aws_myhosts.pem (meinen öffentlichen SSH-Schlüssel) in mein GitHub-Konto kopieren.

Ich kann den Text mit Vim auswählen (indem ich die verste Taste und die Pfeiltasten drücke, eine Maus ist nicht vorhanden), aber ich kann ihn nicht in ein externes Programm (z. B. Github) kopieren und einfügen.

Das Problem tritt auf, wenn ich meinen öffentlichen SSH-Schlüssel auf Github kopieren möchte.

Ich habe es installiert vim-gtk, da es Zwischenablageunterstützung bietet. Wenn ich tippe

$ vim --version | grep clipboard  
+clipboard
+xterm_clipboard

Ich verstehe, dass Zwischenablageunterstützung erforderlich ist.

Es wird gesagt, ich sollte "+yText kopieren, aber das hat nicht funktioniert.

Was muss ich tun, um Texte vom Terminal in externe Programme kopieren zu können?

ich habe es versuchtZugriff auf die Systemzwischenablage mit Vim

Antwort1

Um die Zwischenablage auf diese Weise zu verwenden, muss die X-Weiterleitung aktiviert sein ssh -X(oder ssh -Y, je nach Einstellungen).

SehenWie kann ich Text von Vim in die Systemzwischenablage kopieren?.

Antwort2

Hier ist die Antwort, nach der ich gesucht habe:

Zum Verbinden geben Sie Folgendes ein:

ssh -X -i /etc/ssh/aws_myhosts.pem [email protected]

Wo

  • -X Aktiviert X11-Weiterleitung

  • -i Identitätsdatei Die Identitätsdatei wählt eine Datei aus, aus der die Identität (privater Schlüssel) für RSA oder DSA gelesen wird.

  • /etc/ssh/aws_myhosts.pem ist die private Schlüsseldatei (wird von Amazon Web Services verwendet)

  • [email protected]ist der Benutzername auf dem Remote-Host

Als ich den obigen Befehl eingab, d. h.

ssh -X -i /etc/ssh/aws_myhosts.pem [email protected]

Ich habe diese Nachricht erhalten:

/usr/bin/xauth: file /home/ubuntu/.Xauthority does not exist

Ich habe bei Google nachgeschaut, was das bedeutet. Schauen Sie unter dem Beitrag von hwttdz nach

Wie erstellt man eine .Xauthority-Datei für den Fernzugriff?

Das heißt, Sie erhalten eine

 /user/bin/xauth: file/home/username/.Xauthority does not exist

Aber die .XauthorityDatei wird sofort für Sie erstellt. Mit diesem Wissen können Sie dann eine Grafikanwendung vom Remote-Computer aus öffnen, wie

gedit filename

Das hat bei mir funktioniert. Ich tippte

gedit ~/.ssh/id_rsa.pub

wodurch ich den benötigten Text kopieren konnte.

Antwort3

Eher ein Workaround, aber Sie können einfach den Text auswählen und Ctrl+ Shift+ drücken c, um die Auswahl in die Zwischenablage zu kopieren

Antwort4

Als Workaround können Sie echooder catstatt vim verwenden, um die Datei anzuzeigen. Markieren Sie die Daten und verwenden Sie die mittlere Taste oder <ctrl-v>oder <shift-insert>zum Einfügen, je nachdem, was für Sie am besten funktioniert.

verwandte Informationen