linux shell 用什么命令可以修改脚本中全部日期为当前系统日期?
假设脚本名为test,其内容为:cccccc./backup/20140219/aaa_20140813_aaa.a/backup/20140813/aaa_201408...
假设脚本名为test,其内容为:
cccccc./backup/20140219/aaa_20140813_aaa.a
/backup/20140813/aaa_20140813_aaa.a
/backup/20120525/aaa_20140813_aaa.a
/backup/20130612/aaa_20140813_aaa.a
/backup/20110119/aaa_20140813_aaa.a
现在想用一个命令直接把test脚本内容中的所有日期修改为当前系统日期,如何修改,当前系统日期可以用调用$(date +"%Y%m%d")。求各路大侠们给新手一个方法,谢谢。
各位,我可能没说清楚,我的想法是用命令去修改,不是用vi编辑器,脚本里面唯一要求就是修改这些日期为当期系统日期,但是这些已有的日期又都不是固定的日期,上面这段我只是举了个例子! 展开
cccccc./backup/20140219/aaa_20140813_aaa.a
/backup/20140813/aaa_20140813_aaa.a
/backup/20120525/aaa_20140813_aaa.a
/backup/20130612/aaa_20140813_aaa.a
/backup/20110119/aaa_20140813_aaa.a
现在想用一个命令直接把test脚本内容中的所有日期修改为当前系统日期,如何修改,当前系统日期可以用调用$(date +"%Y%m%d")。求各路大侠们给新手一个方法,谢谢。
各位,我可能没说清楚,我的想法是用命令去修改,不是用vi编辑器,脚本里面唯一要求就是修改这些日期为当期系统日期,但是这些已有的日期又都不是固定的日期,上面这段我只是举了个例子! 展开
4个回答
展开全部
1、你是要修改test为当前时期,还是想将脚步的结果修改为当前日期
2、如果修改结果可以定义个变量
#!/bin/sh
ymd=`date +%Y%m%d`
cccccc./backup/${ymd}/aaa_${ymd}_aaa.a
/backup/${ymd}/aaa_${ymd}_aaa.a
/backup/${ymd}/aaa_${ymd}_aaa.a
/backup/${ymd}/aaa_${ymd}_aaa.a
/backup//${ymd}/aaa_${ymd}_aa.a
3、如果仅仅修改test可以用vi或sed
2、如果修改结果可以定义个变量
#!/bin/sh
ymd=`date +%Y%m%d`
cccccc./backup/${ymd}/aaa_${ymd}_aaa.a
/backup/${ymd}/aaa_${ymd}_aaa.a
/backup/${ymd}/aaa_${ymd}_aaa.a
/backup/${ymd}/aaa_${ymd}_aaa.a
/backup//${ymd}/aaa_${ymd}_aa.a
3、如果仅仅修改test可以用vi或sed
更多追问追答
追问
脚本已经固定了的,我现在是要用命令去修改这个test脚本中的日期(该日期不是固定的,但都是年月日)为当前系统日期,要求是不用VI编辑器,sed命令如何修改该脚本?
追答
如果只是修改20140813:
#!/bin/sh
yesterday=`date -d yesterday +%Y%m%d`
today=`date +%Y%m%d`
sed -i "s/${yesterday}/${today}/" test
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sed 或awk 去替换
如果日期已经确定 vi里的替换是否可行。
如果日期已经确定 vi里的替换是否可行。
追问
sed或awk如何操作?
脚本里面的日期是不固定的,很多,所以想用命令去替换全部为当前系统日期!要求是不能用vi编辑器的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你学习shell呢还是想解决问题?文件夹名要改吗?
追问
学习吧,就是用什么方法能把脚本中的日期,修改为当期系统日期,不是单单用vi进去修改。
追答
哦,不会shell不捣乱了,我以为什么方法都行呢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询