라이브러리

[PHP] expect_expectl - 프로세스의 출력이 패턴 중 하나와 일치하거나 지정된 기간이 지나거나 EOF가 표시될 때까지 기다립니다.




PHP에서 Expect Expectl 사용하기

Expect Expectl은 PHP에서 Expect를 사용하기 위한 확장 모듈입니다. Expect는 Unix shell에서 사용하는 명령어를 자동으로 입력하고 결과를 처리하는 데 사용되는 도구입니다. Expect Expectl은 Expect를 PHP에서 사용할 수 있도록 해줍니다.

Expect Expectl 설치


Expect Expectl을 설치하려면 PHP의 확장 모듈을 설치해야 합니다. Ubuntu-based Linux distributions에서 Expect Expectl을 설치하는 방법은 다음과 같습니다.

#hostingforum.kr
bash

sudo apt-get install php-pear

sudo pecl install expect



Expect Expectl 사용하기


Expect Expectl을 사용하려면 Expect Expectl을 로드한 후 Expect Expectl 객체를 생성해야 합니다.

#hostingforum.kr
php

<?php

require_once 'expect.php';



$expect = new Expect();

$expect->spawn('ssh user@host');

$expect->send('ls -l');

$expect->expect('password:');

$expect->send('password');

$expect->expect('>');

$expect->send('exit');

$expect->close();

?>



Expect Expectl 예제


Expect Expectl을 사용하여 SSH로 로그인하고 ls -l 명령어를 실행하는 예제입니다.

#hostingforum.kr
php

<?php

require_once 'expect.php';



$expect = new Expect();

$expect->spawn('ssh user@host');

$expect->send('ls -l');

$expect->expect('password:');

$expect->send('password');

$expect->expect('>');

$expect->send('exit');

$expect->close();



// 결과를 출력합니다.

echo $expect->getOutput();

?>



Expect Expectl 옵션


Expect Expectl에는 다음과 같은 옵션들이 있습니다.

- `spawn()`: Expect Expectl 객체를 생성하고 SSH나 Telnet과 같은 프로세스를 시작합니다.
- `send()`: Expect Expectl 객체에 문자열을 보냅니다.
- `expect()`: Expect Expectl 객체가 특정 문자열을 기다립니다.
- `close()`: Expect Expectl 객체를 종료합니다.
- `getOutput()`: Expect Expectl 객체의 출력을 반환합니다.

Expect Expectl 사용 시 주의점


Expect Expectl을 사용할 때 주의해야 할 점은 다음과 같습니다.

- Expect Expectl은 PHP의 확장 모듈이므로 PHP의 버전과 호환성이 중요합니다.
- Expect Expectl은 Unix shell에서 사용하는 명령어를 자동으로 입력하고 결과를 처리하므로, Expect Expectl을 사용할 때는 Unix shell의 명령어를 잘 이해해야 합니다.
- Expect Expectl은 Expect를 사용하므로, Expect를 사용할 때와 동일한 주의점을 준수해야 합니다.

Expect Expectl은 PHP에서 Expect를 사용하기 위한 확장 모듈입니다. Expect Expectl을 사용하려면 Expect Expectl을 로드한 후 Expect Expectl 객체를 생성해야 합니다. Expect Expectl을 사용할 때는 주의점을 준수해야 하며, Expect Expectl의 옵션을 잘 이해해야 합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

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

검색

게시물 검색