라이브러리

[PHP] shell_exec - 쉘을 통해 명령을 실행하고 전체 출력을 문자열로 반환합니다.




PHP의 shell_exec() 함수

PHP의 `shell_exec()` 함수는 shell 명령어를 실행하고 결과를 문자열로 반환하는 함수입니다. 이 함수는 시스템 명령어를 실행하고 결과를 PHP 변수에 저장할 수 있게 해줍니다.

shell_exec() 함수의 사용법

`shell_exec()` 함수의 사용법은 다음과 같습니다.

#hostingforum.kr
php

string shell_exec ( string $command )



* `$command` : 실행할 shell 명령어를 입력합니다.

shell_exec() 함수의 예제

1. 현재 디렉토리 목록 출력하기

#hostingforum.kr
php

$command = 'ls -l';

$output = shell_exec($command);

echo $output;



이 예제에서는 `ls -l` 명령어를 실행하여 현재 디렉토리의 목록을 출력합니다.

2. 파일 다운로드

#hostingforum.kr
php

$command = 'wget http://example.com/file.txt';

shell_exec($command);



이 예제에서는 `wget` 명령어를 사용하여 `http://example.com/file.txt` 파일을 다운로드합니다.

3. MySQL 데이터베이스 백업

#hostingforum.kr
php

$command = 'mysqldump -u username -p비밀번호 database_name > backup.sql';

shell_exec($command);



이 예제에서는 MySQL 데이터베이스를 백업합니다. `username`과 `비밀번호`를 자신의 MySQL 계정 정보로 대체해야 합니다.

shell_exec() 함수의 주의사항

* 보안: `shell_exec()` 함수는 시스템 명령어를 실행하므로 보안에 유의해야 합니다. 악의적인 사용자가 시스템을 조작할 수 있으므로, 사용자 입력을 받을 때 주의해야 합니다.
* 권한: `shell_exec()` 함수는 시스템 명령어를 실행하므로, 권한이 있는 계정으로 실행해야 합니다.
* 오류 처리: `shell_exec()` 함수는 오류를 반환하지 않으므로, 오류 처리를 위해 try-catch 블록을 사용해야 합니다.

shell_exec() 함수의 대안

* exec() 함수: `exec()` 함수는 `shell_exec()` 함수와 유사하지만, 결과를 배열로 반환합니다.
* passthru() 함수: `passthru()` 함수는 `shell_exec()` 함수와 유사하지만, 결과를 출력하지 않고 오류를 반환합니다.
* system() 함수: `system()` 함수는 `shell_exec()` 함수와 유사하지만, 결과를 출력하고 오류를 반환합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 257 페이지

검색

게시물 검색