Wie lösche ich alles in einer Zeichenfolge nach einem bestimmten Zeichen?

knightOfSpring:

Beispiel:

    before: text_before_specific_character(specific_character)text_to_be_deleted
    after: text_before_specific_character

Ich weiß, dass es mit 'sed' gemacht werden kann. Aber ich stecke fest. Kann mir jemand helfen?

Charles Duffy:

Es gibt keinen Grund, dafür ein externes Tool wie sed zu verwenden. bash kann dies intern mithilfe der Parametererweiterung tun :

Wenn das Zeichen, nach dem Sie trimmen möchten :, beispielsweise ist:

$ str=foo_bar:baz
$ echo "${str%%:*}"
foo_bar

Sie können dies sowohl auf gierige als auch auf nicht gierige Weise tun:

$ str=foo_bar:baz:qux
$ echo "${str%:*}"
foo_bar:baz
$ echo "${str%%:*}"
foo_bar

Insbesondere wenn Sie dies in einer engen Schleife aufrufen, kann das Starten eines neuen sed-Prozesses, das Schreiben in den Prozess, das Lesen seiner Ausgabe und das Warten auf das Beenden (um seine PID zu ernten) einen erheblichen Aufwand bedeuten, der die gesamte interne Verarbeitung ausführt Bash wird nicht haben.


Nun - oft, wenn dies tun zu wollen, was Sie vielleicht wirklich wollen , ist eine Variable in Felder aufgeteilt, die mit besser gemacht wird read.

Angenommen, Sie lesen eine Zeile aus /etc/passwd:

line=root:x:0:0:root:/root:/bin/bash
IFS=: read -r name password_hashed uid gid fullname homedir shell _ <<<"$line"
echo "$name" # will emit "root"
echo "$shell" # will emit "/bin/bash"

Selbst wenn Sie mehrere Zeilen aus einer Datei verarbeiten möchten, können Sie dies auch nur mit Bash und ohne externe Prozesse tun:

while read -r; do
  echo "${REPLY%%:*}"
done <file

... gibt alles bis zum ersten :aus jeder Zeile aus file, ohne dass externe Tools gestartet werden müssen.

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

Wie ersetze ich alles nach einem bestimmten Zeichen in einer Datenrahmenspalte?

Wie lösche ich alles nach einem bestimmten Zeichen für die ganze Spalte in df?

Alles nach einem bestimmten Zeichen in einer Zeichenfolge in Tcl entfernen

Wie lösche ich Wörter vor und nach einem bestimmten Wort in einer Zeichenfolge mit R?

Wie lösche ich alles aus der Zeichenfolge nach dem Zeichen "/u"?

Wie entferne ich alles nach einer bestimmten Zeichenfolge?

Wie extrahiere ich alles nach einer bestimmten Zeichenfolge?

Wie lösche ich Zeichen in einer Zeichenfolge?

Wie suche ich nach einer Teilzeichenfolge in einer Zeichenfolge bis zu einem bestimmten Zeichen in Java?

Wie entferne ich nach einem bestimmten Punkt innerhalb einer Liste Zeichen aus einer Zeichenfolge?

Wie lösche ich mit VBA in Excel alles nach einer bestimmten Spalte?

Wie wähle ich 3 Zeichen in einer Zeichenfolge nach einem bestimmten Symbol aus?

Schließen Sie alles nach einem bestimmten Zeichen aus einer Zeichenfolge aus

Löschen Sie alles bis zu einer bestimmten Zeichenfolge oder einem bestimmten Zeichen in Python

Wie kann man alles außer 100 Zeichen vor und nach einer bestimmten Zeichenfolge ersetzen?

Javascript: Alles nach bestimmten Zeichen aus einer Zeichenfolge holen?

Entfernen Sie alles VOR und NACH bestimmten Zeichen in einer Zeichenfolge

Notepad ++ Wie lösche ich eine neue Zeile nach einem bestimmten Zeichen?

Wie lösche ich jedes Zeichen aus einer Zeichenfolge, die mit einem beliebigen Zeichen in einer anderen Zeichenfolge übereinstimmt?

Wie entferne ich alles, was mit einem bestimmten Zeichen (@) an verschiedenen Stellen in der Zeichenfolge in R beginnt?

Wie lösche ich eine Zeichenfolge nach einem bestimmten Punkt in allen Elementen der Liste?

Wie kann ich mit Javascript alle Zeichen nach einem bestimmten Wort und vor einem Punkt in einer Zeichenfolge entfernen?

Wie kann ich eine Zeichenfolge NUR nach einem bestimmten Zeichen in einer Spalte / einem Feld in awk oder bash entfernen?

Wie lösche ich Zeilen aus einer Datei bis zu einem bestimmten Zeichen? [Python]

Wie lösche ich bestimmte Zeichen aus einer Zeichenfolge in einem Pyspark-Datenrahmen?

Wie erfasse ich eine Zeichenfolge zwischen einem bestimmten Zeichen und einer Zeichenfolge in einer mehrzeiligen Zeichenfolge? Python

Wie suche ich nach einem bestimmten Format in einer Zeichenfolge?

Wie lösche ich bestimmte Zeichen aus einer Zeichenfolge in Ruby?

Wie lösche ich zufällige Zeichen aus einer Zeichenfolge?

TOP Liste

  1. 1

    So legen Sie mit dem Interface Builder unterschiedliche führende Speicherplätze für unterschiedliche Geräte fest

  2. 2

    Fügen Sie eine weitere Schaltfläche zu gwt Suggest Box hinzu

  3. 3

    Wie konvertiere ich einen Vektor von Bytes (u8) in eine Zeichenfolge?

  4. 4

    Wie kann ich in SCSS mehrere Klassen zu einer einzigen kombinieren?

  5. 5

    Wie konvertiert man einen Datenrahmen im langen Format in eine Liste mit einem geeigneten Format?

  6. 6

    Speichern Sie ein MPAndroidChart-Diagramm in einem Bild, ohne es in einer Aktivität anzuzeigen

  7. 7

    Gruppieren Sie Datenrahmenspalten nach ihrem Datum (die Spaltentitel enthalten) und fassen Sie die Instanzen von Einsen und Nullen in R . zusammen

  8. 8

    Tomcat - Leiten Sie den alten Kontextstamm zum neuen Kontextstamm um

  9. 9

    Eclipse Oxygen - Projekte verschwinden

  10. 10

    Wie wählt man Unterschiede mit drei Tabellen aus?

  11. 11

    Tic Tac Toe-Spiel im React-Reset-Button funktioniert nicht

  12. 12

    So berechnen Sie die Verfügbarkeit von Anwendungen (SLA)

  13. 13

    ElasticSearch BulkShardRequest ist aufgrund von org.elasticsearch.common.util.concurrent.EsThreadPoolExecutor fehlgeschlagen

  14. 14

    Wie kann ich den Kaskadenmodus global einstellen?

  15. 15

    Python: Spalten mit demselben Namen zusammenführen, wobei der Mindestwert beibehalten wird

  16. 16

    So erhalten Sie eine gleichmäßige Höhe für alle Eingabefelder

  17. 17

    Wie erstelle ich einen neuen übergeordneten Knoten außerhalb der .ref (/ path) in der Firebase-Echtzeitdatenbank mithilfe von Cloud-Funktionen (Typescript)?

  18. 18

    Was ist schneller: SUM über NULL oder über 0?

  19. 19

    Wie kann ich eine verschachtelte Schleife mit lapply in R ersetzen?

  20. 20

    Kann ich ein Tkinter-Canvas erstellen, das mehrere Zeilen in einem Text-Widget umfasst?

  21. 21

    Ärgerliches Problem mit yaml, das ich nicht lösen kann

heißlabel

Archiv