Dies ist ein String Ich möchte Teil eines Dateinamens Ich möchte manipulieren und schreiben:Schreiben in eine Datei + Dateiname ist eine Zeichenfolge, die leicht
$ echo "$val1"
"$29.95 Carryover Plan 1GB"
Das ist, was ich will der Dateiname soll sein (Leerzeichen werden mit Unterstrich und Anführungszeichen entfernt) und NAME_
werden am Anfang hinzugefügt und _NAME
am Ende hinzugefügt.
$ echo "NAME_"$val1"_NAME" | sed s/" "/_/g | sed s/'"'/''/g
NAME_$29.95_Carryover_Plan_1GB_NAME
Und das versucht, mich Testdaten auf die betreffende Datei
$ a="NAME_"$val1"_NAME" | sed s/" "/_/g | sed s/'"'/''/g && echo "test123" > "$a"
zu schreiben, aber es kommt nicht heraus, wie ich will "$29.95_Carryover_Plan_1GB"
$ ls -lth
total 44M
-rw-r--r-- 1 kevin.smith mkpasswd 8 Jul 25 16:08 "$29.95_Carryover_Plan_1GB"
Wie kann ich schreiben zu der Datei und für den Dateinamen zu seinNAME_$29.95_Carryover_Plan_1GB_NAME
??
' $ a = "NAME _ $ {$ {val1 ///_} //" /} _ NAME " -sh: NAME _ $ {$ {val1 ///_} // \" /} _ NAME: schlechte Ersetzung' das ist aqi gefragt [hier] (http://stackoverflow.com/questions/38559463/how-to-replace-spaces-with-underscore-and-doublequotes-mit- nothing-in-bash/38561193 # 38561193) und wurde gesagt, dass es nicht möglich sei. Kannst du erklären, warum ich eine "schlechte Vertretung" bekomme? – HattrickNZ
Ich habe vergessen zu beachten, das funktioniert nicht in bash. Jetzt behoben. – viraptor
tks dafür, führt mich zu einem anderen [q] (https://en.wikipedia.org/wiki/Z_shell) – HattrickNZ