0
操纵这是一个字符串我想操纵,是一个文件名我要写入组成部分的字符串:写入文件+文件名是需要稍微
$ echo "$val1"
"$29.95 Carryover Plan 1GB"
这就是我想要的文件名为(用下划线和双引号删除的空格),并在开始处添加NAME_
,并在末尾添加_NAME
。
$ echo "NAME_"$val1"_NAME" | sed s/" "/_/g | sed s/'"'/''/g
NAME_$29.95_Carryover_Plan_1GB_NAME
,这是我努力的测试数据写入到文件中的问题
$ a="NAME_"$val1"_NAME" | sed s/" "/_/g | sed s/'"'/''/g && echo "test123" > "$a"
但它不出来,因为我想"$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"
我如何写到文件和文件名是NAME_$29.95_Carryover_Plan_1GB_NAME
??
' $ a =“NAME _ $ {$ {val1 ///_} // \”/} _NAME“ -sh:NAME _ $ {$ {val1 ///_} // \”/} _ NAME:bad substitution' that是aqi问[这里](http://stackoverflow.com/questions/38559463/how-to-replace-spaces-with-underscore-and-doublequotes-with-没有在bash/38561193#38561193),并被告知它无法完成。你能解释我为什么会得到'不好的替代品'吗? – HattrickNZ
我忘了注意这在bash中不起作用。现在修复。 – viraptor
为此,引导我到另一个[q](https://en.wikipedia.org/wiki/Z_shell) – HattrickNZ