我需要帮助使用 grep 从 Linux 系统上的文件中提取分区日期时间。
源文件是一个 XML,包含以下数据:
<item start="20231010073000 +0100" stop="20231010100000 +0100">...</item>
Run Code Online (Sandbox Code Playgroud)
我需要提取完整的开始日期,但使用 grep 我无法得到完整的结果。我的代码:
for startDate in $(grep -Eo 'start="[0-9]{14} [\+|\-][0-9]{4}"' "$filepath" ); do
echo "$startDate"
done
Run Code Online (Sandbox Code Playgroud)
我得到了两个不同的结果:
start="20231010073000
+0100"
Run Code Online (Sandbox Code Playgroud)
我可以得到它如下:
start="20231010073000 +0100"
Run Code Online (Sandbox Code Playgroud)
我尝试过\s、[[:space:]]和其他示例,但使用相同的解决方案。
我的代码似乎有错误,但我无法修复它!
我很感谢任何形式的帮助!