linux终端中的YYYYMMDD到YYYY/MM/DD

linux终端中的YYYYMMDD到YYYY/MM/DD,linux,bash,ubuntu,terminal,Linux,Bash,Ubuntu,Terminal,我需要帮助将文件中的日期从YYYYMMDD转换为YYYY/MM/DD 例如,file.txt包含: 20200612 tuesday 20200315 monday 20200819 wednesday 应该是这样的: 2020/06/12 tuesday 2020/03/15 monday 2020/08/19 wednesday 我用awk尝试了一些代码,但没有任何结果:(你可以用sed来做: sed“s/\([:digit:]\{4\}\([:digit:]\{2\}\)\([:dig

我需要帮助将文件中的日期从YYYYMMDD转换为YYYY/MM/DD

例如,file.txt包含:

20200612 tuesday
20200315 monday
20200819 wednesday
应该是这样的:

2020/06/12 tuesday
2020/03/15 monday
2020/08/19 wednesday

我用awk尝试了一些代码,但没有任何结果:(

你可以用sed来做:

sed“s/\([:digit:]\{4\}\([:digit:]\{2\}\)\([:digit:]\{2\}\)/\1\/\2\/\3/g”

欢迎使用Stack Overflow。这是一个面向专业和热情程序员的问答页面。请在问题中添加您自己的代码。您至少需要展示您自己为解决此问题所做的研究。在bash参数展开中使用子字符串运算符应该很简单。您可能需要e也在谷歌上搜索了一些东西。这就是实际学习的地方:)使用扩展的正则表达式和不同的分隔符:
sed-r“s,([[:digit:]{4})([[:digit:]{2})([[:digit:]{2}),\1/\2/\3,g”
。在Ubuntu 16.04上测试。