$#表示shell执行的参数个数
#!/bin/bash
echo '$# = '$#
1.mac 下 输出两个日期直接
#!/bin/bash
START=`date -j -f %Y-%m-%d:%H.%M $1:0.0 +%s`
END=`date -j -f %Y-%m-%d:%H.%M $2:0.0 +%s`
for ((i=$START; i<=$END; i+=86400)); do # seconds/day
echo `date -j -f %s "$i" +%Y-%m-%d`
done;
输出
./range 2012-1-30 2012-2-4
2012-01-30
2012-01-31
2012-02-01
2. mac shell 批量生成文件
#!/bin/bash
touch file{1..5}.docx
3. mac shell 用日期批量生成文件的名称
#!/bin/bash
pre_date=0
START=`date -j -f %Y-%m-%d:%H.%M $1:0.0 +%s`
END=`date -j -f %Y-%m-%d:%H.%M $2:0.0 +%s`
for ((i=$START; i<=$END; i+=86400)); do # seconds/day
pre_date=`date -j -f %s "$i" +%Y-%m-%d`
echo $pre_date
touch name-$pre_date.docx
done;
3. mac shell 先复制文件 然后用日期重命名这个文件
#!/bin/bash
echo '$# = '$#
pre_date=0
sourceFile="default.docx"
START=`date -j -f %Y-%m-%d:%H.%M $1:0.0 +%s`
END=`date -j -f %Y-%m-%d:%H.%M $2:0.0 +%s`
echo "开始创建文件......"
for ((i=$START; i<=$END; i+=86400)); do # seconds/day
pre_date=`date -j -f %s "$i" +%Y-%m-%d`
echo $pre_date
desFile=name-$pre_date.docx
cp -f $sourceFile $desFile
sleep 1 #1秒
done;
echo "全部创建完成!~"
4. Windows环境运行shell脚本
https://blog.csdn.net/u012514113/article/details/125840499
5. mac date 命令详解
https://blog.csdn.net/zhw21w/article/details/126010972
https://www.jianshu.com/p/7904f6cdc67c
6. 获取周一 和周日的时间
#!/bin/bash
echo '$# = '$#
pre_date=0
sourceFile="default.docx"
echo "开始创建文件......"
for (( i = 0; i < 20; i++ )); do # seconds/day
addnum=$[$i*7]
addnum2=$[$addnum+6]
zhouyi=`date -v+"$addnum"d +"%Y%m%d"`
zhouri=`date -v+"$addnum2"d +"%Y%m%d"`
echo $zhouyi $zhouri
desFile=姚建伟-$zhouyi-$zhouri.docx
cp -f $sourceFile $desFile
sleep 1 #1秒
done;
echo "全部创建完成!~"
网友评论