Bash 在指定月份内修改的Findind文件
我构建了这个小脚本,用于查找在指定月份修改过的文件 在过去的四年中,我的脚本工作得很好,但从最近的更新来看,现在使用BashV4,这将不再工作,我不明白为什么 下面是脚本(Bash 在指定月份内修改的Findind文件,bash,find,xargs,Bash,Find,Xargs,我构建了这个小脚本,用于查找在指定月份修改过的文件 在过去的四年中,我的脚本工作得很好,但从最近的更新来看,现在使用BashV4,这将不再工作,我不明白为什么 下面是脚本(fmonth.sh): 好的,我找到了答案:$@可以替换为$*: #!/bin/sh month=$1 shift printf "now\n%s-01\n%s-01 00:00 +1 month\n" $month $month | date -f - +%s | xargs printf "n=%s/6
fmonth.sh
):
好的,我找到了答案:
$@
可以替换为$*
:
#!/bin/sh
month=$1
shift
printf "now\n%s-01\n%s-01 00:00 +1 month\n" $month $month |
date -f - +%s |
xargs printf "n=%s/60-.5;s=%s/60;e=%s/60;n-s;if (n-e <0) 0 else n-e\n" |
bc -l |
xargs printf "find $* -mmin -%.0f -mmin +%.0f -print0\n" |
sh |
xargs -0 /bin/ls -ltrd |
less -S
#/垃圾箱/垃圾箱
月份=$1
转移
printf“现在\n%s-01\n%s-01 00:00+1个月\n”$month$month|
日期-f-+%s|
xargs printf“n=%s/60-.5;s=%s/60;e=%s/60;n-s;if(n-e
fmonth.sh 2012-09 /etc /home/user /root /var/lib
#!/bin/sh
month=$1
shift
printf "now\n%s-01\n%s-01 00:00 +1 month\n" $month $month |
date -f - +%s |
xargs printf "n=%s/60-.5;s=%s/60;e=%s/60;n-s;if (n-e <0) 0 else n-e\n" |
bc -l |
xargs printf "find $* -mmin -%.0f -mmin +%.0f -print0\n" |
sh |
xargs -0 /bin/ls -ltrd |
less -S