Was ist das "nächste Zellenzeichen" beim Kopieren und Einfügen aus einer Tabelle?

329
user14492

Wenn Sie eine Zeile aus einer Tabelle kopieren und in eine andere einfügen, befindet sich diese an der richtigen Stelle. Was ist also das Zeichen zwischen den Zellenwerten, wenn diese Operation ausgeführt wird.

Z.B. Ich habe diesen Text: Phone (P), Email (E), Home (H)und wenn ich alle ersetzen ,mit \nund den Text in einer tabellarischen Formanten in Pages / Word / Excel einfügen, wird es als eine Säule interpretiert.

Um die Zeichenfolge durch eine neue Zeile zu ersetzen, habe ich Folgendes verwendet:

> pbpaste | tr -s ', ' '\n' | pbcopy 

Ich habe es versucht \t, \n\naber sie sind immer noch als Reihe eingefügt.

Als nächstes versuchte ich es in einer Reihe zu kopieren und auf dem Terminal zu drucken ( gcatweil ich unter macOS bin):

> pbpaste | gcat -A  a^Ib^Ic⏎  

Lesen der Dokumente heißt es:

TAB-Zeichen als ^ I anzeigen

Aber das Ersetzen ,mit \tmacht es nicht. Weiß jemand, um welchen Charakter es sich handelt und wie ich ein Komma damit ersetzen kann, um eine Zeile einzufügen?

3
Es ist das Tabulatorzeichen Tony EE rocketscientist vor 5 Jahren 0
Wenn "\ t" es nicht tut, wird es "^ t" vielleicht? cybernetic.nomad vor 5 Jahren 0
tr ist der falsche Befehl für diese Aufgabe. Versuchen Sie `pbpaste | sed 's /, / / ​​g' | pbcopy`. Beachten Sie, dass Sie den Befehl nicht einfach aus diesem Kommentar kopieren können. Control-v gefolgt von der Tabulatortaste ermöglicht Ihnen die Eingabe eines Tabulatorzeichens in der Terminal-Befehlszeile. Wenn Sie diesen Befehl in Terminal eingeben, geben Sie `s /, / control-v tab / g 'ein. creidhne vor 5 Jahren 1
@creidhne ist eine lustige Sache, wenn ich gefragt habe, wie man am besten einen Teilstring durch eine andere Zeichenfolge ersetzt, bevor die Leute sagten, sie sollten "sed" nicht verwenden und "tr" verwenden. "sed" ist ziemlich verwirrend für mich und für ein einfaches Ersetzen ohne Jede Regex ist nicht mehr hilfreich. user14492 vor 5 Jahren 0
Aber hat der `sed` Befehl das Problem gelöst? Das Problem mit `tr` ist, dass Zeichen und nicht Strings übersetzt werden. `sed` verwendet den sogenannten" Basisregex "," sed -E "hingegen den modernen" erweiterten Regex ". Der `sed` Befehl ersetzt jedes`, `(Komma gefolgt von einem Leerzeichen) durch ein Tabulatorzeichen. Würde eine Antwort helfen? creidhne vor 5 Jahren 1
"für ein einfaches Ersetzen ohne Regex" .. || erinnert mich an japanische Technologien ... Der am schwierigsten / fortgeschrittenste zu handhaben ist der einfache. (einfachste Lösung / Zero-Thinking-On-Benutzerseite) || Wenn die Methode funktioniert, dann ok. Wenn nicht, haben wir immer die Möglichkeit, ein eigenes Programm zu erstellen und / oder Assembly / C ++ zu verwenden. || Ich hoffe, Sie verstehen mich nicht falsch. Ich bin nur daran interessiert zu erfahren, ob es funktioniert. + Ich habe keinen Mac, um es auszuprobieren. [: p._phidot_ vor 5 Jahren 0

0 Antworten auf die Frage