[英]Not able to edit existing date in a file using awk in linux
我正在嘗試使用以下命令將日期從30 January 2015
格式轉換為30012015
。 原始格式出現在文件的偶數行中。 我只希望更改該行。 有人可以幫我嗎。
awk '{if(NR%2==1){print $0 > "file.txt"}else{print now=$("$0" +%d%m%Y') > "file.txt"}}' file.txt
你可以試試,
echo -e "whatever\n30 January 2015" | awk '
BEGIN{
m=split("January|February|March|April|May|June|July|August|September|October|November|December",d,"|");
for(i=1;i<=m;i++) months[d[i]]=i;
}
NR%2 { print; next }
{
printf "%02d%02d%04d\n",$1,months[$2],$3;
}'
你得到,
whatever 30012015
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.