【发布时间】:2021-04-13 17:46:04
【问题描述】:
我想检查 awstats012021.blalblalblala.txt 是否在我的目录中,如果是我想将其重命名为 awstats012021.blalblalblala-主要.txt。
如何检查所有这些文件以及何时有新文件。我总是想用 -main.txt 版本重命名(复制)它。特别是如果您必须考虑标题中的日期。
-rw-r--r-- 1 root root 9233 Apr 7 17:08 awstats012021.blalblalblala-main.txt
-rw-r--r-- 1 root root 9233 Mar 1 14:25 awstats012021.blalblalblala.txt
-rw-r--r-- 1 root root 12986 Mar 2 00:00 awstats022021.blalblalblala-main.txt
-rw-r--r-- 1 root root 12986 Mar 2 00:00 awstats022021.blalblalblala.txt
-rw-r--r-- 1 root root 37865 Apr 2 00:00 awstats032021.blalblalblala-main.txt
-rw-r--r-- 1 root root 37865 Apr 2 00:00 awstats032021.blalblalblala.txt
-rw-r--r-- 1 root root 16036 Apr 7 00:00 awstats042021.blalblalblala-main.txt
-rw-r--r-- 1 root root 23983 Apr 13 00:00 awstats042021.blalblalblala.txt
-rw-r--r-- 1 root root 9463 Mar 1 14:25 awstats112020.blalblalblala-main.txt
-rw-r--r-- 1 root root 9463 Mar 1 14:25 awstats112020.blalblalblala.txt
-rw-r--r-- 1 root root 21645 Mar 1 14:25 awstats122020.blalblalblala-main.txt
-rw-r--r-- 1 root root 21645 Mar 1 14:25 awstats122020.blalblalblala.txt
awstats 和 blalblablala 是固定字符串。只有数字 012021 不是,它总是月份和年份。所以我们需要一个通配符。我只需要签入一个目录。我认为在这个例子中,零文件匹配也是可能的,但是当创建一个名为“awstats052021.blalblalblala.txt”的新文件时,我想自动将其重命名为“awstats052021.blalblalblala-main.txt”。
for awstats??????.blalblalblala.txt in /srv/www/example/storage/logs/awstats
if not exist awstats??????.blalblalblala-main.txt
cp -p awstats??????.blalblalblala.txt awstats??????.blalblalblala-main.txt
not if
echo "no file to copy!"
exit
【问题讨论】:
-
重命名不等于复制;你必须下定决心。
-
欢迎来到 SO,您应该使用 tour 并阅读 How to Ask 和 minimal reproducible example。