[LINUX] So führen Sie den Befehl sed mit der for-Anweisung mehrmals aus

Überblick

Unter Linux können Sie mit der for-Anweisung Zeichen an verschiedenen Stellen in der Zeile mit dem Befehl ** sed ** einfügen. Ich denke, es kann auf andere Befehle angewendet werden. (Es scheint einen einfacheren Weg zu geben ...)


insert.sh (Sie können anstelle eines Shell-Skripts auch die Befehlszeile kopieren und einfügen.)


#!/bin/bash
cat sequence.txt > sequence2.txt
for int in 15 12 9 6 3
do
echo "$(sed -E "s/(^.{$int})/\1-/g" sequence2.txt)" > sequence2.txt
done

##Alle 3 Zeichen"-"Einführen
## sequence.txt -> ("-"Einfügen) -> sequence2.txt

Ausführungsergebnis


$ cat sequence.txt
xxxx5xxx10xxx15
xx3xx6xx9x12x15
xxxxAxxxxAxxxxA
xxAxxAxxAxxAxxA

$ ./insert.sh ; cat sequence2.txt
xxx-x5x-xx1-0xx-x15-
xx3-xx6-xx9-x12-x15-
xxx-xAx-xxx-Axx-xxA-
xxA-xxA-xxA-xxA-xxA-

Kommentar

  1. Verwenden Sie denselben Dateinamen
    sed -E" s / (^. {$ Int}) / \ 1- / g "sequence2.txt> sequence2.txt Normalerweise ist der Inhalt von ** sequence2.txt ** leer, wenn Sie dies mögen, aber indem Sie
    echo" $ (command) "> sequence2.txt
    , ** sequence2 setzen Sie können die .txt ** erfolgreich überschreiben, ohne leer zu sein und auszugeben.

    (Leere Daten werden an erster Stelle ausgegeben, wenn > sequence2.txt ausgeführt wird, und die Operation ** leert den Inhalt von ** sequence2.txt vor sed ** Weil es fertig ist (als Ergebnis wird es "sed", um Daten zu leeren). Der Inhalt des "echo" $ (Befehl) "" wird vor der "> sequence2.txt" ausgeführt, sodass ** sequence2.txt **) </ font>
    <erfolgreich überschrieben wird br>
  2. Um die Variable ** $ int ** der for-Anweisung im Befehl sed verwenden zu können, müssen Sie""verwenden (using''ist eine Variable in der Variablen. Weil es nur als Zeichenkette erkannt wird)

Es scheint verschiedene andere Methoden für die Ausgabe in die gleichnamige Datei zu geben. Wenn Sie also interessiert sind, lesen Sie bitte den unten stehenden Link. (1. Link)

Zu> 1.
Verarbeiten Sie die Datei mit Bash und überschreiben Sie das Ergebnis mit derselben Datei
Zur gleichnamigen Datei umleiten

In Bezug auf 2.
[[bash] Unterschied zwischen "" "," \ "und" "- eher Reisschule](https://blog.goo.ne.jp/01_mai/e/ a4f9f01fb647066d0c7eb37e8ae0a254)

Recommended Posts

So führen Sie den Befehl sed mit der for-Anweisung mehrmals aus
So schreiben Sie eine GUI mit dem Befehl maya
So löschen Sie die angegebene Zeichenfolge mit dem Befehl sed! !! !!
So führen Sie einen Befehl mit einem Unterprozess in Python aus
Ich wusste nicht, wie ich die [Python] für die Anweisung verwenden sollte
[Einführung in Python] Wie verwende ich den Operator in in der for-Anweisung?
[Linux] Verwendung des Befehls echo
Führen Sie den Befehl COPY mit Psycopg of Python aus
So ermitteln Sie die Anzahl der CPUs ohne den Befehl sar
So verwenden Sie MkDocs zum ersten Mal
So schreiben Sie einen ShellScript Bash für Anweisung
So finden Sie die Korrelation für kategoriale Variablen
Ein Memorandum zur Ausführung des Befehls! Sudo magic in Jupyter Notebook
[Einführung in Python] So erhalten Sie den Datenindex mit der for-Anweisung
So erstellen Sie einen Artikel über die Befehlszeile
[Für Anfänger] Wie man den Befehl say mit Python benutzt!
[Für Anfänger] Anzeigen von Karten und Suchfeldern mithilfe der GoogleMap Javascript-API
Linux-Benutzer hinzufügen, wie der Befehl useradd verwendet wird
Verwendung des Befehls grep und häufiger Samples
[Einführung in Python] Wie stoppe ich die Schleife mit break?
Ich möchte ssh mit dem Befehl expected automatisieren!
(Denken Sie schnell daran) Verwendung der LINUX-Befehlszeile
[Einführung in Python] So schreiben Sie sich wiederholende Anweisungen mit for-Anweisungen
So drehen Sie die for-Anweisung, wenn das Wörterbuch mehrere Werte für einen Schlüssel enthält
So ermitteln Sie die kumulative Summe für jede Gruppe mithilfe von DataFrame in Spark [Python-Version]
[Python] Verwendung von Matplotlib, einer Bibliothek zum Zeichnen von Diagrammen
Ich möchte ssh mit dem Befehl expected automatisieren! Teil 2
So definieren Sie mehrere Variablen in einer Python for-Anweisung
So generieren Sie eine Abfrage mit dem IN-Operator in Django
Verwendung des Generators
Klonen Sie mit dem Befehl dd
Wie benutzt man den Dekorateur?
So erhöhen Sie die Achse
So starten Sie die erste Projektion
[Python] Verwendung der for-Anweisung. Eine Methode zum Extrahieren durch Angabe eines Bereichs oder von Bedingungen.
So stellen Sie die Ausgabeauflösung für jeden Keyframe in Blender ein
[sh] Das Speichern der Befehlsausführung führt zu Variablen
So ändern Sie die Protokollstufe von Azure SDK für Python
Lassen Sie es uns tun, indem Sie numpy teilen, ohne die for-Anweisung zu verwenden
So bringen Sie den Druckertreiber für Oki Mac in Linux
So erhalten Sie mithilfe der Mastodon-API Follower und Follower von Python
[EC2] So installieren Sie Chrome und den Inhalt jedes Befehls
So erstellen Sie einen Befehl zum Lesen der Einstellungsdatei mit Pyramide
[EC2] So installieren und laden Sie chromedriver über die Befehlszeile herunter
Übergeben von Argumenten mithilfe einer Instanz mit dem systemctl-Befehl von systemd
So geben Sie das Ausgabeergebnis des Linux-Befehls man in eine Datei aus
So überwachen Sie den Ausführungsstatus von sqlldr mit dem Befehl pv
Wie nutzt man maschinelles Lernen für die Arbeit? 01_ Den Zweck des maschinellen Lernens verstehen
Lassen Sie uns dies tun, indem wir numpy multiplizieren, ohne die for-Anweisung zu verwenden
■ Ausführen von "TensorFlow CNN für schnelle Stilübertragung", das von GitHub mithilfe von Google Colaboratry stammt
Zur Zeit möchte ich mit FastAPI zeigen, wie man eine solche API in swagger verwendet
So installieren Sie Python mit Anaconda
Wie berechnet man den Autokorrelationskoeffizienten?
Verwendung der Zip-Funktion
Verwendung des optparse-Moduls
[Für Nicht-Programmierer] Wie man Kaggle läuft
Führen Sie die Anweisung [python] exec, eval aus