Shell 脚本不应删除* root 目录* 下的任何文件。我的* 路径将类似于 /export/home/ftp/ ...
我做了一些研究,并找到了使用 find 和 exec 命令从特定路径查找和删除超过 30 天的文件的方法。
*find /export/home/ftp/ -type f -mtime +30 -exec rm -f {} \;
但根据要求,我只想从该目录中删除 console.log 和 server.log 并排除其余文件。
请帮我解决这个问题。
最近,我听到系统管理员和经理询问防止人们意外删除数据的解决方案。他们是非常聪明和敬业的人,他们寻求解决方案,以便数据不会意外或故意丢失。我听说解决这个问题的一个疯狂的想法是摆脱用户对 rm 命令的访问权限。这真的是一个疯狂的想法吗?
拥有用户意外或有时心不在焉地删除数据的管理员。他们面临的问题是用户删除数据,最有可能使用 rm,然后意识到他们实际上需要这些数据。
请告诉我解决这个问题的最佳解决方案......?
我想检查普通用户是否具有超级用户权限(意味着 root 权限)。我的操作系统是 RHEL 6,我检查了/etc/passwd
配置文件,但没有用。请告诉我在 Linux 机器中查找用户当前权限的任何方法。
可能的重复:
删除超过 30 天的文件的脚本
我的硬盘突然满了,我四处寻找,直到我终于发现隐藏在Library/Logs/Console/myname/中的“console.log.9”文件是112 Gigs!
我无法打开并正确检查它。
我做了一些研究,并找到了使用 find 和 exec 命令从特定路径查找和删除超过 30 天的日志文件的方法。
find /export/home/ftp ( -name console.log -or -name server.log ) -mtime +30 -exec rm -f {} +
但我想每天轮换 console.log 并且是否有任何 shell 脚本可以每天轮换 console.log。
请帮我解决这个问题。
目前,我的 logrotate 配置在旋转的日志文件后添加了一个数字:
mylogfile.log
被旋转到mylogfile.log.1
我想将扩展名更改为mylogfile.log.Current date
有谁知道如何做到这一点?
我的日志旋转代码是:
/usr/local/jboss/jboss-3.2.7-ND1/server/default/log/consolelog.log
{
copytruncate
rotate 1
missingok
notifempty
}
Run Code Online (Sandbox Code Playgroud)
目前正在使用脚本重命名旋转文件。是否有任何选项可以更改日志旋转默认配置的扩展名。请帮我
是否有任何选项可以更改扩展名的位置,例如mylogfile.log
更改为mylogfile_currentdate.log
.