Unix 将每个文件内容复制到新文件名中(如果需要,使用grep/sed/awk)
如何使用grep、sed、cat或awk而不是xmlstarlet复制每个文件的内容并将其复制到新的文件名中 必须考虑的是,仅需考虑的文件将以以下方式命名: Toto.O.1.applist.xml Toto.O.2.applist.xml Toto.O.3.applist.xml Toto.O.4.applist.xml 我知道要考虑所有这些文件,我必须使用以下语法:Unix 将每个文件内容复制到新文件名中(如果需要,使用grep/sed/awk),unix,awk,grep,Unix,Awk,Grep,如何使用grep、sed、cat或awk而不是xmlstarlet复制每个文件的内容并将其复制到新的文件名中 必须考虑的是,仅需考虑的文件将以以下方式命名: Toto.O.1.applist.xml Toto.O.2.applist.xml Toto.O.3.applist.xml Toto.O.4.applist.xml 我知道要考虑所有这些文件,我必须使用以下语法: Toto.O.*.applist.xml 还要考虑到,任何用户都可以按照上述命名创建文件,他们可以创建任意数量的文件,并且
Toto.O.*.applist.xml
还要考虑到,任何用户都可以按照上述命名创建文件,他们可以创建任意数量的文件,并且这些文件的内容可以包含字母、数字、数字、空格以及点
让我们举一个可以创建的示例:
Toto.O.1.applist.xml
内容:abc.def3.g H2k
Toto.O.2.applist.xml
内容:Rara df.epc.siunX.zefin
Toto.O.3.applist.xml
内容:露露g32.zfreuf.CdtTGCTG
Toto.O.4.applist.xml
内容:61FGRf XC.efde.444
等等
预期结果:
/目录_OF_RESULT/blabla.abc.def3.g H2k.xml
/目录\u OF_RESULT/Rara df.epc.siunX.zefin.xml
/目录\u OF_RESULT/LULU g32.zfreuf.CdtTGCTG.xml
/目录\u OF_RESULT/61FGRf XC.efde.444.xml
提前感谢您的帮助。我不完全理解您要做什么,以及为什么会有这么多不必要的复杂性,但这里有一些东西可能会让问题更具体 从具有特定文件名模式的文件中读取行,并使用这些行中的名称创建文件 例如: 模板文件名列表
$ head path3/list?
==> path3/list1 <==
1
2
3
==> path3/list2 <==
10
11
12
$ cat path3/list? | while read -r f; do touch path3/"$f".xml; done
$ ls path3
1.xml 10.xml 11.xml 12.xml 2.xml 3.xml list1 list2
问题是:这些文件的内容是什么?为什么初始模板文件具有xml扩展名,即使内容被假定为文件名?只是为了回答我的主要问题,我使用wich命令发现我已经做到了:
VARNAMES=$(awk '{ print }' TXT_FILES_*_.txt)
cd
printf '%s\n' "$NAMES" | while IFS= read -r line
do
sed "s/com.package.name/$line/" < FOLDER/TEXTFILEEXEMPLE.xml > FOLDER/FINAL_FILE-$line.xml
感谢@karakfa和其他人尝试帮助我。详细解释您的预期结果请使用示例代码标记并解释这三件事。1-您对代码标记中的示例输入有什么疑问。2-代码标记中的示例的预期结果是什么。3-到目前为止您尝试了什么?@RomanPerekhrest,正如我所写的:我想知道如何复制文件名ExSDCard.O.*.applist.xml的每个内容,其中*可能是1,2,3,4,5,6,等等。。。并以新的文件名通过它们。当然,我也尝试过几种方法,从同一个论坛上获取答案,还有其他类似的话题,比如sed、cat、grep和awk,但我并不是每天都使用这些工具,我会说,有些用途已经足够特殊了。每次,无论什么工具,如果我能说的话,我都找不到合适的组合。这就是我来问你答案的原因。_RESULT/blablabla.abc.def3.g H2k.xml文件/目录的内容是什么?我们只知道文件名是作为一行从一个源文件派生的。还有,为什么扩展名是xml而看起来不像xml文件?@karakfa关于将要创建的新xml文件的内容,我已经使用shell script:sed命令从模板文件复制内容,每次在当前步骤中创建的每个新创建文件中的分隔符之间替换内容。另外,为什么扩展名是xml而看起来不像xml文件?也就是说?