首页 > 解决方案 > -bash: /bin/ls: 如果PATH 很多,参数列表太长

问题描述

我在 PATH 变量中设置了大约两千条路径(我知道它过多,但我做了一些实验),每当我尝试运行任何命令时,我都会收到以下错误,在这种情况下是ls.

-bash: /bin/ls: Argument list too long

我已经检查了有关错误消息的几个主题。但是,我想知道 PATH var length 与 arg list 错误有什么关系。

有人会有想法/解释吗?

谢谢!

标签: linuxbashshelllinux-kernelenvironment-variables

解决方案


相同的缓冲区用于将命令行参数和环境传递给新进程。在这种情况下,您的值PATH似乎足以让环境超过您的操作系统对该缓冲区大小设置的任何限制。因此,即使是零参数列表也太长了。


推荐阅读