Linux date的用法小解


Linux date的用法小解
 
#!/bin/bash
echo -e "i will use touch command to create 3 files"
read -p "input filename: " fileuser
filename=${fileuser:-"filename"}
date1=$(date --date='2 days ago' +%Y%m%d)
date2=$(date --date='1 days ago' +%Y%m%d)
date3=$(date +%Y%m%d)
file1=${filename}${date1}
file2=${filename}${date2}
file3=${filename}${date3}
 
touch "$file1"
touch "$file2"
touch "$file3"
ls
上面这个shell脚本是分别用2天前,1天前,和今天的日期以及用户自己输入的名字拼接在一起创建三个文件。
filename=${fileuser:-"filename"}这个用来判断fileuser变量是否为空,若为空的话用filename来替代。
date --date='2 days ago' +%Y%m%d 这个表示显示2天前的日期 就是2013年9月8日,显示出来的就是20130908
如果想表示今天的日期,可以这样date=$(date +%Y%m%d) ,另外如果想要2013-09-10这种表示形式,可以使用%F
即date2=$(date --date='1 days ago' +%F) 这个%F就等于%Y-%m-%d,这样也可以的,但太繁琐。
1 days ago也可以换成1 months ago或1 yeas ago
还需要注意的是后面的那个+是一定不能省略的。

相关内容

    暂无相关文章