aix批量查找文件并删除

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

aix批量查找文件并删除

aix版本:

# oslevel -r

5300-06


目标:

批量删除Oracle bdump目录下的trc文件


过程描述:直接rm -rf * 会报错:

aix删除数据异常:

$ rm -rf easdb_j*.trc

ksh: /usr/bin/rm: 0403-027 The parameter list is too long.


解决办法:

更换删除方法:

$ find . -name "easdb_*.trc" -type f  -exec rm {} \;



出现这种情况主要是因为AIX内核参数ncargs控制,ncargs参数说明如下:


ncargs 用途: 指定运行 exec() 子例程时,ARG/ENU 列表(大小为 4 KB 的块)允许的最大大小。

值: 缺省值:6;范围:6 到 1024

显示: lsattr -E -l sys0 -a ncargs

更改: chdev -l sys0 -a ncargs=NewValue

更改会立即效而且在引导期间保存下来。

诊断: 用户不可以执行任何附加的进程,因为传递给 exec() 系统调用的变元表太长。低缺省值可能造成一些程序失败并出现幅角列表太长错误消息,在这种情况下,您可以尝试使用以上的 chdev 命令增加 ncargs 值,然后重新运行该程序。

调整: 这是为了防止变元表过长引起 exec() 子例程失败的一种机制。请注意,调整到一个较高 ncargs 值会对系统内存资源加一些额外的限制。


了解了0403-027错误,现在我们有讨论两种方法解决:

方法一:

  1.调高ncargs 值

#chdev -l sys0 -a ncargs=64


2.OK,可以删除了

#rm *


3.工作做完,把参数调回原值

chdev -l sys0 -ncargs=4



方法二:使用递归式参数传递

 find ./ -mtime +10 -exec rm {} \;

————————————————

原文链接:https://blog.csdn.net/littlegyy/article/details/60141317


aix批量查找文件并删除

aix版本:# oslevel -r5300-06目标:批量删除Oracle bdump目录下的trc文件过程描述:直接rm -rf * 会报错:aix删除数据异常:$ rm -r...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息