系统维护,需要监控目录大小,超过大小按照日期删除子文件和子文件夹。

2020-10-27 15:34:03 +08:00
 cheneydog
这么个需求,用脚本写起来感觉都好困难。
如果让你做这个需求,你是愿意写成 shell 、 还是 python 、还是 golang 写好编译成 bin ?
1296 次点击
所在节点    问与答
22 条回复
cheneydog
2020-10-27 15:39:22 +08:00
或者写成 nodejs 的?
CallMeReznov
2020-10-27 15:42:33 +08:00
python
os.listdir
os.path.getsize


mv 到单独的文件夹里,为了稳妥,单独操作删除步骤,想定时带确认那都随便你了。
cmdOptionKana
2020-10-27 15:46:04 +08:00
用什么都一样,这个级别的任务体现不了多少语言优势,用最熟练的语言来做就行。
v2orz
2020-10-27 16:50:29 +08:00
shell 应该最容易
Tumblr
2020-10-27 16:51:44 +08:00
PowerShell,非常简单的一个实现了。。。
w274189159
2020-10-27 17:01:08 +08:00
shell 不是很简单嘛。ll -Sh 文件大小排序后超过大小的用 find 查找日期时间段的筛出来删除
cheneydog
2020-10-27 17:50:23 +08:00
@w274189159
@v2orz
我咋觉得 shell 写起来好麻烦,一个 if 就要好多行。
cheneydog
2020-10-27 17:50:54 +08:00
@Tumblr linux 的服务器
swulling
2020-10-27 18:04:34 +08:00
shell 一行
Tumblr
2020-10-27 19:10:57 +08:00
@cheneydog #7 平台不太重要,PowerShell 是跨平台的。
hanxiV2EX
2020-10-27 19:22:21 +08:00
find 命令加 rm 命令就行
hanxiV2EX
2020-10-27 19:23:15 +08:00
MeteorCat
2020-10-27 19:25:07 +08:00
shell 无脑做就行了,用系统自带不需要什么依赖,干干净净
cheneydog
2020-10-27 19:25:54 +08:00
@hanxiV2EX 这个是按照天删的,需求是按照最大大小删的,还是有点区别的。
cheneydog
2020-10-27 19:26:42 +08:00
@MeteorCat 我觉得 shell 的 if else 特别难看,读个配置文件都很麻烦。
hanxiV2EX
2020-10-27 19:33:43 +08:00
@cheneydog 你标题不是写的按照日期删么
alixali
2020-10-27 19:48:11 +08:00
shell 更清晰,执行不会出问题。python 的话就几行就完事了,加上定时任务;两个风格不一样。
MeteorCat
2020-10-27 19:48:39 +08:00
@cheneydog ......我都是看注释说明,注释到位啥都行,难不难看不寒碜又不是找老婆,当然你要好看也可以 python 一把梭,这种没什么大问题,我一般服务器要求都是用最少的东西干最多的活
cheneydog
2020-10-27 20:40:51 +08:00
@MeteorCat
@alixali
@hanxiV2EX
看了几位的观点,现在已经倾向于 shell 直接写了,如果后续还要加一些:eg. 配置文件指定多个目录 /MGK 表示限定大小 /忽略指定子文件 等一些啰嗦的需求,shell 会不会不好维护?
MeteorCat
2020-10-27 21:27:14 +08:00
@cheneydog 参数提取,写成像脚本一样丢个参数执行,和脚本文件一样传参数就行了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/719070

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX