메뉴 건너뛰기

프로그램언어

2021.03.26 17:55

PHP 쉘 스크립트

조회 수 887 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

참조 : http://pokute.tistory.com/23

 


삭제 대비용 원본글 복사
 

linux shell에서 php실행하기
php파일의 맨위에 php실행파일의 주소를 추가해준다.  

 #!/usr/local/php-X-X-X/bin/php
<?php
.
.
.



만약 웹브라우져에서 읽을 수 없게 하려면 -q 옵션을 붙여준다. 

 #!/usr/local/php-X-X-X/bin/php -q



아래는 더 자세한 정보. 

일반적으로 UNIX/Linux 환경에서 간단한 일들을 처리 하기 위해 쉘 스크립트를 많이 사용하게 된다. 하지만 C++같은 문법에만 익숙해져 있는 사람들은 아무래도 쉘 스크립트를 사용하는데 어색함이 없지 않아 있다. 
그에 반해 PHP의 경우에는 C와 문법이 거의 유사하므로 작성하는데 어색함이 그리 크게 느껴지지 않는다.
 
이 문서는 PHP를 쉘 스크립트로 이용 할 수 있는 방법에 대해서 간단히 기술 하도록 하겠다.

1. php를 쉘 스크립트로 사용하기 위한 요구 사항
php를 쉘 언어로 사용하기 위해서는 아파치 모듈 대신 CGI 바이너리로 설치 해야 한다.

2. #!/usr/local/bin/php -q 선언
일반적인 PHP 페이지와 PHP 쉘 스크립트 사이의 단 한가지 차이점은 PHP스크립트의 제일 첫 번째 줄에 위의 제목과 같이 쉘 호출을 해주어야 하는 점이다. 첫 번째 줄의 '#!' 은 주석을 나타냄과 동시에 이 쉘 스크립트가 실행 되면서 이용하게 되는 바이너리 엔진의 위치와 옵션을 타나낸다. (사용하게 될 바이너리의 위치는 사용자의 환경에 따라 다르니 자신의 php 엔진이 어느 디렉토리에 있는지 확인 하도록 한다. 'whereis' 같은 명령어가 도움이 될 것이다.)
-q 옵션은 HTTP헤더를 사용하지 않겠다는 뜻이며 나머지 보다 자세한 사항은 php 도움말을 참조 하도록 한다.
그 외의 부분은 일반적인 php 파일을 작성하는 것과 전혀 다르지 않다. 

#!/usr/local/bin/php -q
<?php
   .....
?>


3. 쉘 스크립트에 매개변수 전달하기
일 반적으로 쉘 스크립트는 프로세스를 실행 시키면서 매개변수를 전달하는 경우가 많다. php 스크립트에서 매개변수를 전달하는 것은 $argv 배열을 통해서 이루어 진다. $argv 배열을 사용하기 위해서는 php.ini의 register_argc_argv , register_globals 항목들을 On으로 셋팅 해주어야 한다. 

register_argc_argv = On
register_globals = On


 아래 스크립트 예제는 프로세스 시작시 인자로 받은 두 변수를 출력 할 것이다. 

#!/usr/local/bin/php -q
<?php
    $first_name = $argv[1];
    $last_name = $argv[2];
    print("Hello, $first_name $last_name! How are you today?n");
?>


4. 프로그램 실행 하기 

$ phpShellTest.ph arg1 arg2

 


  1. No Image 12Jan
    by
    2023/01/12 Views 288 

    PHP 이미지 리사이즈 함수 imagecopyresized

  2. No Image 12Jan
    by
    2023/01/12 Views 301 

    PHP http -> https 로 전환

  3. No Image 12Jan
    by
    2023/01/12 Views 336 

    PHP - 공공 DATA XML 파싱(PHP 버전)

  4. No Image 12Jan
    by
    2023/01/12 Views 304 

    php www 붙이기

  5. No Image 08Jul
    by
    2021/07/08 Views 557 

    주차 , 요일, 해당주의 시작일, 해당주의 종료일 date()

  6. No Image 08Jul
    by
    2021/07/08 Views 391 

    특정일의 주차 구하기

  7. No Image 08Jul
    by
    2021/07/08 Views 1076 

    날짜함수 사용하여 한달에 주차 구하기 weeks by month

  8. No Image 29Mar
    by
    2021/03/29 Views 559 

    CodeIgniter - DB오류체크, 디버깅 여부 설정

  9. No Image 27Mar
    by
    2021/03/27 Views 338 

    [PHP기초] 함수와 객체의 비교

  10. No Image 27Mar
    by
    2021/03/27 Views 632 

    클래스와 인스턴스 그리고 메소드 만들기

  11. No Image 27Mar
    by
    2021/03/27 Views 320 

    [PHP기초] 생성자(인스턴스 초기화)

  12. No Image 27Mar
    by
    2021/03/27 Views 351 

    [PHP기초] 접근제어자(access modifier)

  13. No Image 27Mar
    by
    2021/03/27 Views 265 

    [PHP기초] 상속기본

  14. No Image 27Mar
    by
    2021/03/27 Views 321 

    [PHP기초] 데이터 집합 - 배열다루기

  15. No Image 27Mar
    by
    2021/03/27 Views 340 

    [PHP 기초] 함수에 관해서

  16. php date 날짜 관련 함수

  17. No Image 26Mar
    by
    2021/03/26 Views 429 

    AJAX로 해당 페이지에서 COOKIE 사용하기

  18. No Image 26Mar
    by
    2021/03/26 Views 301 

    파일 output을 return 하기

  19. No Image 26Mar
    by
    2021/03/26 Views 334 

    MYSQL DB 다중접속을 해결 하는 한 방법

  20. No Image 26Mar
    by 조쉬
    2021/03/26 Views 887 

    PHP 쉘 스크립트

Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved