从XML文件中提取文件名(不带扩展名)
当我grep“Server”时,我有以下XML输出:从XML文件中提取文件名(不带扩展名),xml,bash,sed,awk,Xml,Bash,Sed,Awk,当我grep“Server”时,我有以下XML输出: 假设数据位于文件“test.data”中,使用awk和sed很简单: 假设数据位于文件“test.data”中,使用awk和sed很简单: 对于示例输入数据,以下sed脚本将起作用: sed -e 's/.*\/\(.*\)\.xml.*/\1/g' t.tmp *\/与正斜杠(贪婪)匹配。然后,\(.*)\.xml匹配行的最后一行,并获取组中的基本文件名。\1告诉它用所有这些替换组中的数据。对于示例输入数据,以下sed脚本将起作用: se
假设数据位于文件“test.data”中,使用awk和sed很简单:
假设数据位于文件“test.data”中,使用awk和sed很简单:
对于示例输入数据,以下sed脚本将起作用:
sed -e 's/.*\/\(.*\)\.xml.*/\1/g' t.tmp
*\/
与正斜杠(贪婪)匹配。然后,\(.*)\.xml
匹配行的最后一行,并获取组中的基本文件名。\1
告诉它用所有这些替换组中的数据。对于示例输入数据,以下sed脚本将起作用:
sed -e 's/.*\/\(.*\)\.xml.*/\1/g' t.tmp
*\/
与正斜杠(贪婪)匹配。然后,\(.*)\.xml
匹配行的最后一行,并获取组中的基本文件名。\1
告诉它用所有这些来代替组中的内容。接受的答案可以简化,而不需要无用的cat和sed
awk '{gsub(/\..*/,"",$5) ;print $5}' file
接受的答案可以简化,没有无用的cat和sed
awk '{gsub(/\..*/,"",$5) ;print $5}' file
如果您的源是XML文档,那么使用XSLT/XPath怎么样?您正在使用什么操作系统?如果您的源代码是XML文档,那么使用XSLT/XPath如何?你在做什么操作系统?
awk '{gsub(/\..*/,"",$5) ;print $5}' file
>gawk -F"/" "{ split($5,a,\".\"); print a[1]}" 1.t
PRX01
PRX02
PRX03
PRX04