我有一个lastaction脚本我试图在我的" log"文件夹,因为我想移动log / archive文件夹中日志文件夹中的所有文件和文件夹。所以我只是添加了
mv log/* log/archive/2014
显然,我得到一个错误,说存档文件夹无法移动到其自身的子目录中,所以我尝试将额外参数添加到move命令以移动除存档文件夹之外的所有内容。
mv !(archive) log/* log/archive/2014
这个确切的命令,如果从cli执行,可以正常工作,但是当在lastaction / endscript块中添加时,它会抛出以下消息
logrotate_script:2:logrotate_script:语法错误:"("意外
有人知道为什么会这样吗?
答案 0 :(得分:0)
您使用bash
作为shell。您还启用了extglob
设置。
当logrotate执行那个shell脚本时,其中一个或另一个不是真的。
mv
命令对我来说也很奇怪。如果archive
在日志下,那么我不明白为什么!(archive)
没有log/
作为前缀。此外,log/*
仍应匹配log/archive
,无论之前是extglob
个glob。 (那就是我认为你想要mv log/!(archive) log/archive/2014
,假设你不想忽视mv
首先发出的警告。)