Linux下删除大量文件的方法,Argument list too long报错解决办法
Linux下删除大量文件的方法,Argument list too long报错解决办法
Linux用rm -rf * 删除php ci的sess_save_path文件夹下的文件时报错
-bash: /bin/rm: Argument list too long
删除文件中包含的小文件数量过多,通常是由于受到 shell 参数个数限制所致。
这个是Linux系统存在的限制,可以通过如下指令查看该参数值的配置:
getconf ARG_MAX
解决办法:
可以通过如下方式尝试删除(都需要先cd到对应目录下执行)
1.使用 awk 删除:
ls -l| awk '{ print "rm -f ",$9}'|sh
2.通过 ls 来配合 xargs 删除 test 目录下的所有文件:
ls |xargs rm -r
3.通过 find 来完成,更加安全智能,支持的参数更多。
find /usr/local/tests/ -name "*.jpg" |xargs rm -r
find . -name "ci_session*" | xargs rm -rf "ci_session*"
用WinSCP上传文件时报错:
一般错误(服务器应该提供错误描述)。
错误码:4
服务器返回的错误消息:Failure
错误码4的常见原因:
- 将文件重命名为一个已经存在的文件。
- 创建一个已经存在的目录。
- 将远程文件移动到一个不同的文件系统(HDD)上。
- 将文件上传到一个满的文件系统(HDD)上。
- 达到了用户磁盘限额。
=================
实战详细过程:
#df -lh
查看空间只使用了78%,还有足够的系统空间可以利用
# du -hs /home/wwwroot/
9.5G /home/wwwroot/
这个放php代码的目录竟然有9.5G了,可能有大量session文件没有清理掉导致的
删掉/home/wwwlogs/日志文件了还是登陆不了,
session文件估计有很多,ls 命令很久了都还没有返回结果
估计要把这session文件也删掉才行
跟时间没关系的,主要是php的每次他会生成一个文件,然后不会自动删掉,要弄个脚本定时删掉才行了
应该是放session那个文件夹下的文件数量超过了65536个 最大的限制了
其他的 都可以用rm -rf * 删除的,有可能是这个网站的给攻击了短时间内产生大量的无用session
从ci_session9删到ci_session0还没有删完,还有字母a-z开头的,这么多必须得写个脚本删除才行了
文件多了导致分分的都登录不了,删了一部分后才能登录
session文件太多了,没有自动删除的
----------
# du -hs /home/wwwroot/zdztest/
569M /home/wwwroot/zdztest/
# cd /home/wwwroot/zdztest/public/sess_save_path
# find . -name "ci_session*" | xargs rm -rf "ci_session*"
# du -hs /home/wwwroot/zdztest/
153M /home/wwwroot/zdztest/
----------
# pwd
/home/wwwroot/zdztest/public
# ls -lh
total 142M
drwxr-xr-x 2 www www 142M May 9 18:33 sess_save_path
#sess_save_path这个文件夹上次异常了导致占空间比较大,需要删掉才能释放空间
# rm -rf *
# ls -lh
total 4.0K
# du -hs /home/wwwroot/
120M /home/wwwroot/
golang技术交流群:316397059,vuejs技术交流群:458915921 囤币一族:621258209,有兴趣的可以加入
微信公众号: 心禅道(xinchandao)投资论道
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
2018-05-04 AELF(ELF)区块链项目介绍