ich folgendes Bash-Skript haben:Schleife durch eine Datei und sed Ersatz jede Zeile
while IFS= read -r line; do
line=$(echo $line | sed "s/\'/\'\'/")
[[ $line =~ ^\<ID\>(.*) ]] && printf "${BASH_REMATCH[1]}"
done < <(dos2unix < file)
editierte Version des Skripts ohne dos2unix:
while IFS= read -r line && line=${line%$'\r'}; do
[[ $line =~ ^\<ID\>(.*) ]] && printf "${BASH_REMATCH[1]}"
done < file
ich jeden Apostroph in "file" ersetzen wollen mit 2 Apostrophen vor Ich Schleife durch es. Wie kann ich das machen? Ich wäre dankbar für Vorschläge bezüglich einer der beiden Versionen. WICHTIG Im NICHT dürfen die Originaldatei ändern !!
Sie haben '' drin. Ist das XML? Wenn ja, dann wäre es eine sehr gute Idee, einen XML-Parser zu verwenden. –
Sobrique
@Sobrique Ich extrahiere Daten aus Textdateien, um eine SQL-Datei zu erstellen und dann lese ich .read.sql, um die Datenbank zu erstellen und zu laden –
Was genau "funktioniert nicht richtig" bedeutet? –