linux - 更改文件linux中的日期格式
问题描述
我有一个 csv 文件。我需要更改文件内数据中的日期格式。
ABCD,1234,01022019
我尝试了以下方法:
awk -F ',' '{printf("%s,%s,",$1,$2);system("date -d "$3" +%Y-%m-%d");}' new
我需要更改该文件中的日期格式,而不是写入另一个文件。
解决方案
假设您的意思是要更改源文件以使这些日期具有yyyy-mm-dd
格式,您可以单独执行此操作awk
:
awk -F, '{$3 = substr($3,5,4)"-"substr($3,3,2)"-"substr($3,1,2) ; print}' inFile >outFile
然后,您可以在复制回原始文件之前检查以确保行数相同,例如:
[[ $(wc -l <<inFile) -eq $(wc -l <<outFile) ]] && mv outFile inFile
推荐阅读
- git - 我在 Github 上托管了我的网站,但我遇到了这个问题“在此地址配置的站点不包含请求的文件。”
- laravel - Laravel Sanctum 未使用邮递员进行身份验证
- postgresql - 使用 powershell 和任务调度程序的 Postgresql 自动备份
- iis - 在 IIS 中禁用目录浏览,但在“日志”文件夹中披露了应用程序日志文件
- reactjs - 我可以在移动环境中使用 React Redux 吗?
- javascript - 如何在另一个 SVGpath 的两侧对齐 SVG 图像?
- javascript - 如何为此幻灯片制作播放/暂停按钮
- reactjs - 应用字体在 ReactJS Web 应用程序中看起来不同
- reactjs - 带有样式标签的条件在 React 中不起作用
- memory - 在 pytorch 中,如何在程序仍在运行时释放所有 gpu 内存?