Script de linha de comando PHP não está mais funcionando

2

Um script PHP de linha de comando que já estava em funcionamento parou de funcionar - quando eu o executo agora, ele retorna esse erro:

[root@server dir]# ./custom.php
Extension './custom.php' not present.

Se eu executar o script assim, ele funciona:

[root@server dir]# php custom.php

Por várias razões, não posso fazer isso. Eu li algo que implica que isso poderia estar relacionado a terminações de linha, mas não faço ideia de como / porque. Eu editei este arquivo recentemente em um Mac e um PC e enviei por FTP para o servidor, mas eu tenho feito isso por um longo tempo sem problemas.

EDIT A primeira linha do script é:

#!/usr/bin/php -q

FYI O servidor está executando o CentOS 5.4

    
por robjmills 06.08.2010 / 17:02

3 respostas

4

geralmente são finais de linha ruins. usando dos finais de linha. Tente usar dos2unix no arquivo e, em seguida, execute-o

dos2unix custom.php
    
por 06.08.2010 / 17:08
0

Coloque: #! / usr / bin / php no topo do seu script (antes dos seus colchetes PHP). E então chmod + x custom.php

    
por 06.08.2010 / 17:07
-1

Se você editar um arquivo php no windows, faça o upload e execute-o no linux com o método de linha de comando. Você pode encontrar um problema em execução provavelmente assim:

[root @ ItsCloud02 wsdl] # ./lnxcli.php

Extensão './lnxcli.php' ausente.

Ou você pode encontrar algum outro problema estranho. Cuidado com a tecla enter. No ambiente Windows, a tecla Enter gera dois caracteres binários '0D0A'. Mas no Linux, digite key generate apenas apenas um 'OA'. Eu gostaria que pudesse ajudar alguém se você estiver usando o windows para codificar php e rodar como um programa de linha de comando no linux

    
por 14.09.2013 / 17:35