在CentOS运行sh脚本时,如果遇到“command not found”错误,通常是由于以下原因导致:1)脚本中调用的命令未正确安装;2)系统环境变量PATH未包含命令所在路径;3)脚本头部未指定正确的解释器。
解决方法如下:首先确认所需命令是否已安装,若未安装可通过`yum install <命令名>`进行安装。其次检查环境变量PATH,确保其包含命令路径,可使用`echo $PATH`查看,并通过`export PATH=$PATH:<新增路径>`临时添加路径,或在`~/.bashrc`中永久配置。最后检查脚本首行是否以`#!/bin/bash`或`#!/bin/sh`开头,确保系统使用正确Shell解释执行脚本。此外,尝试在脚本内命令前加上完整路径,如将`ls`改为`/bin/ls`,以验证是否为PATH配置问题。这些步骤通常能有效解决“command not found”问题。