本意是想让AI优化 cleanup_mounts 函数。
最终给的代码结果是:
cleanup_mounts() {
log "开始清理挂载点..."
# 确保 MOUNT_BASE 存在且非空
if [ -z "$MOUNT_BASE" ] || [ "$MOUNT_BASE" = "/" ]; then
log "错误:挂载基础目录未定义或无效"
return 1
}
local mounted_usb=$(findmnt -n -t fuseblk,vfat,ntfs,exfat,ext4 -o TARGET | grep "^$MOUNT_BASE/")
if [ -z "$mounted_usb" ]; then
log "没有找到需要清理的挂载点"
else
for mount_point in $mounted_usb; do
log "正在处理挂载点: $mount_point"
# 先尝试安全卸载
if umount -l "$mount_point" 2>/dev/null; then
log "成功安全卸载 $mount_point"
continue
fi
local using_pids=$(fuser -m "$mount_point" 2>/dev/null)
if [ -n "$using_pids" ]; then
log "发现正在使用此挂载点的进程: $using_pids"
log "正在终止这些进程..."
# 先发送 SIGTERM 信号
fuser -k -TERM -m "$mount_point" >/dev/null 2>&1
sleep 2
if fuser -m "$mount_point" >/dev/null 2>&1; then
log "使用 SIGKILL 强制终止进程"
fuser -k -KILL -m "$mount_point" >/dev/null 2>&1
sleep 1
fi
fi
# 最后尝试强制卸载
if umount -f "$mount_point" 2>/dev/null; then
log "成功强制卸载 $mount_point"
else
log "警告:无法卸载 $mount_point"
fi
done
fi
# 清理所有遗留的挂载点目录
find "$MOUNT_BASE" -mindepth 1 -maxdepth 1 -type d -exec rm -rf {} \;
# 重建并设置正确的权限
mkdir -p "$MOUNT_BASE"
chmod 777 "$MOUNT_BASE"
chown "$SMB_USER:$SMB_GROUP" "$MOUNT_BASE"
# 重启 Samba 服务以确保共享正常
systemctl restart smbd nmbd
}
1
shizhibuyu2023 15 小时 24 分钟前
论测试的重要性
|
2
wukongkong 15 小时 21 分钟前 via Android 1
笑死了
|
3
COW 15 小时 19 分钟前 via Android
哈哈,是你提问的方式不对,还是 AI 被污染了
|
4
szdosar 15 小时 15 分钟前
自己手动,显示隐藏设备,手动删除灰色的设备项。
|
5
msg7086 15 小时 11 分钟前
拿到脚本不检查内容直接运行是这样的。
|
6
cybort 15 小时 8 分钟前 via Android 2
你如果直接在论坛找人要脚本,结果也是这样。
|
7
MFWT 14 小时 52 分钟前 1
请谨慎使用代码 —— 来自 Gemini 的提醒
|
8
MossFox 14 小时 50 分钟前 1
"清理挂载 usb 设备的 linux 脚本"
你就说清没清理吧 🤪 |
9
NoOneNoBody 14 小时 44 分钟前
对 AI 用词要准确
要么用“移除没有挂载的”,要么用“整理”,“清理”是多涵义的 不久前曾说过,“自从用了 AI ,就知道语文的重要性了”,V 友答:“英语也是” |
10
ferock 14 小时 38 分钟前
真把 AI 当懒人良药了???
AI 只是一个怎么逗你开心怎么说话的策略工具而已。。。 现在把 AI 当谷歌,当一言九鼎,这已经是歪楼了。 还是懒作怪啊,更不需要自己担责,怎么也不想一下是自己敲的回车 |
11
sampeng 14 小时 35 分钟前
测试不是让你生成了直接就运行。。是把命令改成 print 。。确定没问题再改成真实命令。。。
|
12
flyqie 13 小时 35 分钟前 via Android
不意外,ai 很多时候写的是非常离谱的,自己不检查那肯定要吃亏的。
|
13
jackchenli 13 小时 30 分钟前
我觉得这个例子给当今职场拿着 ai 结果当论据的人一个典范
|
14
VZEXEZVzzz 13 小时 2 分钟前 via iPhone
要不分享一下脚本看看👀
|
15
ano 12 小时 41 分钟前
太相信 Ai 了吧
|
16
EZ4ZZW 11 小时 48 分钟前
我猜是清理文件系统、块设备格式化之类的命令,直接怼到了系统盘上,然后还加了 `sudo`。
|
17
yolee599 11 小时 38 分钟前 via Android
笑死,竟然真的有人完全相信 AI ,AI 就是一个生成系统,说白了就是字符串随机拼接,完全没有验证过的
|
18
yaoppp 11 小时 32 分钟前
所以楼主是如何提问的? AI 是怎么回答的?
|
19
charlie21 11 小时 18 分钟前 1
AI 出错之后谁负责和 AI 本身准确度是两个问题
当前 AI 公司都是免责型服务,你随便用,用了后果自负 /t/1082532 —— 也就是说,你可以调教 AI 让它对你更好用,其实用户本身成了一个免费调试员。对于这部分工作量,你的调教实际上贡献到 bot 更智能了,所以理论上 OpenAI 应该付钱给你 / 至少弥补一下你的损失 |
20
cuicuiv5 10 小时 41 分钟前 1
生成完你再让他解释一下脚本
|
22
importmeta 10 小时 5 分钟前 1
这段时间在写一个平台, 深刻体会到 AI 根本不是万能的, 也代替不了人, 写个函数还行, 写个大点的功能就不行了.
|
23
yanqiyu 9 小时 57 分钟前 1
所以 AI 很容易搞出这种似是而非的代码,不过我吃过最大的亏就是似是而非的代码导致长达半小时的 debug 。
不过要是想要清理挂载点盖住的文件,完全可以考虑先 unshare -m ,然后把挂载点卸了(这时候就不用考虑卸载不掉的那种情况了),然后删除文件就行了。 |
24
Cu635 9 小时 56 分钟前
该,谁让 op 不检查代码的?
|
25
yanqiyu 9 小时 49 分钟前
@EZ4ZZW 可能出问题的地方太多了,比如直接上来就有 findmnt 来找挂载点,但是 findmnt 输出是带树状结构的,然后 grep 的结果直接就 for-loop ,这样子要是路径有空格也会出问题
然后前前后后就导致该卸载的卸载点没卸载掉,然后就把盘里面的文件干掉了 |
26
julyclyde 9 小时 48 分钟前
太赞了
|
27
HUZHUANGZHUANG 9 小时 6 分钟前
用靠谱一点的,看不出来你这是哪家的,一般 claude 3.5 和 GPT 的最新模型,一般没这类问题。最重要的是你要懂代码啦
|
28
HUZHUANGZHUANG 9 小时 5 分钟前
@HUZHUANGZHUANG #27 另外就是我会用一个 AI 的结果到另一个 AI 那里去验证和询问。
|
29
ochatokori 8 小时 58 分钟前 via Android
是这样的,和楼主无关,每次看到有人说 ai 取代程序员的我都心想但凡能看懂一点代码都说不出这话
|
30
83f420984 OP @HUZHUANGZHUANG cursor 里选择的是 claude-3.5-sonnet
|
31
zhangeric 7 小时 58 分钟前
ai 给的代码一定要测试啊.
|
32
spadger 7 小时 25 分钟前
哈哈哈哈
|
33
leaflxh 6 小时 54 分钟前
哪天逃逸了都不奇怪
rm -rf 属于高危操作 |
34
zhujinliang 6 小时 31 分钟前 via iPhone 3
AI 自撰一良方 服之 卒
|
35
mingtdlb 6 小时 17 分钟前 1
人家给你代码,你都不审计一下吗?
|
36
sn0wdr1am 5 小时 51 分钟前 1
以后直接用 AI 看病,后果可想而知。
能直接把人给看没了。 |
37
sn0wdr1am 5 小时 50 分钟前 1
不要过度信任 AI ,就像不要把辅助驾驶功能当作无人驾驶功能一样。
|
38
oldcai 5 小时 11 分钟前
是哪个 AI 来着
|
40
javaisthebest 5 小时 1 分钟前
那玩意和搜索引擎有啥本质区别?
搜索引擎答案是什么 ai 答案是什么 你用 ai 背后说不定非洲一大群黑叔叔正在做数据标注给你筛选答案呢 |
41
liulicaixiao 5 小时 1 分钟前
删东西的脚本你也敢乱用哈哈,我上次让 claude 写个自动更换代理的脚本我都是自己看完一遍代码才敢用
|
42
enihcam 4 小时 19 分钟前
想起一个巨 sb 的同事。
我:这个代码测了没? 他:这个代码是 AI 生成。 我:那,这个代码测了没? 他:这个代码是 AI 生成。 我:我知道,我是问这个代码测了没? 他:这个代码是 AI 生成。 |
43
512357301 3 小时 41 分钟前 via Android
AI 是干脏活儿、累活儿的,不是干新活儿的。
提线木偶知道吧,AI 现阶段只能当提线木偶来用,还没法让它独立干活儿,太不可控了。。。 它就好像是你的一个高能下属,干活儿很快,80%的效果都不错,但你不盯着它,它就可能搞砸事情。。。 它的某些能力确实很牛逼,但你控制不了它,它就会“作恶”,虽然它只是在执行你的命令而已。 推荐看一篇短篇漫画,《神秘的程序员们系列——代码的深渊》,讲的就是 AI 的故事。 |
44
BeforeTooLate 3 小时 39 分钟前
建议用英语去提问,中文很多词表达意思不够精确
|
45
wnpllrzodiac 3 小时 26 分钟前
rm -rf ${variable}/
这种脚本么。变量一空就废了 |
46
yhm2046 3 小时 11 分钟前
楼上好多人没用过 cursor 把,截图最下方写了模型是 claude3.5-connect ,我原来也用了一段时间最近发现不能白嫖,昨天看到马斯克的 gork2 更新了,免费每个月 25 美元的 api ,用 ai 写了下载网上视频的 python 程序,感觉比 chatgpt 和 claude3 好用,不过用了一个多小时又报错不能用了:遇到了来自 Custom Provider 的错误,一般是由错误设置或账户问题引起的。请检查 AI 设置和账户情况,或者点击这里查看常见问题文档。API Error: Status Code 400, {"code":"Client specified an invalid argument","error":"The model expects a single `text` element per message."}
有知道的指点一下谢谢 |
47
plmsuper8 2 小时 50 分钟前
gpt4 给的建议是:
这段脚本的核心逻辑看起来非常周全,。。。不过,还有一些地方可以优化和加强健壮性:改进建议: 。。。 安全性检查: 避免误删除非挂载点文件: ```bash find "$MOUNT_BASE" -mindepth 1 -maxdepth 1 -type d -exec test -z "$(findmnt -n -o TARGET -- "{}")" \; -exec rm -rf {} + ``` |
48
plmsuper8 2 小时 40 分钟前
|