Normalmente os scripts / programas na pasta atual não são executados no linux / unix.
Scripts / programas são executados somente quando o script / programa pode ser encontrado na variável $PATH
.
Portanto, quando o caminho não está incluído na variável $PATH
, você precisa fornecer o caminho para o script / programa para executá-lo. Para executar um script / programa na pasta atual, você deve prefixar com ./
, que denota a pasta currect.
Verifique se a variável $PATH
nos dois servidores é a mesma.
Com base no seu comentário sobre a variável $PATH
, suspeito que um dos scripts esteja em uma pasta encontrada pela variável $PATH
, enquanto o outro está em outra pasta.
Atenção
Não é uma boa idéia incluir ./
no seu $PATH
. Desta forma, um usuário pode criar um comando malicioso (como ls
) e guiá-lo para a pasta onde ele o salva. Em seguida, você executará a versão local em vez do comando do sistema (se a pasta atual for colocada em $PATH
before /bin
).