리눅스 read 예제

우리는 당신이 데비안 또는 우분투 리눅스에 설치된 모든 PHP 패키지의 목록을 원하는 가정 해 봅시다: 어떻게 읽기 () 0 바이트 STREAMS 메시지를 처리하는 현재 읽기 모드 설정에 의해 결정된다. 바이트 스트림 모드에서 read()는 n바이트 바이트를 읽을 때까지 또는 읽을 데이터가 더 이상 없을 때까지 또는 0바이트 메시지 블록이 발생할 때까지 데이터를 수락합니다. 그런 다음 read() 함수는 읽은 바이트 수를 반환하고 0바이트 메시지를 다음 read(), getmsg() 또는 getpmsg()에 의해 검색할 스트림에 다시 배치합니다. 메시지-비삭제 모드 또는 메시지 삭제 모드에서는 0바이트 메시지가 0을 반환하고 메시지가 STREAM에서 제거됩니다. 0바이트 메시지가 STREAM의 첫 번째 메시지로 읽히면 메시지는 STREAM에서 제거되고 0은 읽기 모드에 관계없이 반환됩니다. Linux 파일 이름에 줄 바선이 포함될 수 있으므로 NULL을 줄 구분 기호로 사용하고 있으므로 이를 보존해야 합니다. (이것은 끔찍한 소리, 하지만 그래, 그것은 발생합니다.) 예 9: 읽기 명령에 대한 시간 시간을 설정하여 무기한 대기하지 않도록 합니다. TMOUT이라는 시스템 변수를 사용하여 셸 스크립트에 대해 이 시간 시간을 설정할 수 있습니다. #!/bin/ksh file=”/home/vivek/data.txt” IFS= 읽기 줄은 $line 표시하거나 에코 “$line”로 $line 뭔가를 하는 동안 <"$file"는 명령으로 내장된 읽기와 함께 사용할 수 있는 다른 매개 변수를 포함하는 테이블입니다. 및 nbyte가 0이면 read() 함수가 아래에 설명된 대로 오류를 감지하고 반환할 수 있습니다.

오류가 없거나 오류 검색이 수행되지 않은 경우 read() 함수는 0을 반환하고 다른 결과가 없습니다. 위의 예제에서는 프롬프트 다음에 변수 “첫 번째”, “중간”및 “마지막”을 사용합니다. 읽기 -p 예제 모두 변수에 값을 할당할 시기에 대해 서로 다른 목적을 해결합니다. 읽기 명령은 일종의 대화형 스크립트인 스크립트를 실행할 때 변수를 할당하는 데 유용합니다. 예7: 읽기 명령에 REPLY라는 붙단 변수가 있습니다. 이것은 $REPLY 값을 저장하는 시스템 변수입니다. 입력 파일($input)은 읽기 명령에서 사용해야 하는 파일의 이름입니다. 읽기 명령은 파일 줄을 한 줄씩 읽고 $line bash 셸 변수에 각 줄을 할당합니다. 모든 줄이 파일에서 읽히면 bash while 루프가 중지됩니다. 공백 문제를 보존하기 위해 내부 필드 구분 기호(IFS)가 빈 문자열로 설정됩니다.

이 기능은 페일 세이프 기능입니다. 다음으로 읽기 명령을 “텍스트”를 인수로 호출합니다. 이렇게 하면 사용자가 캐리지 리턴(Enter 키)에 따라 무언가를 입력한 다음 변수 텍스트에 입력한 내용을 할당할 때까지 기다립니다. EOF가 발생하거나 시간 초과가 초과되거나 이름에 값을 할당하는 오류가 발생하거나 -u에 제공된 파일 설명자가 잘못되지 않는 한 읽기의 종료 상태가 0입니다. 읽기는 터미널에서 데이터를 취할 것입니다. 원하는 대로 입력하고 Enter를 누릅니다. 텍스트는 다음 줄에 에코됩니다. 이 루프는 새 줄에서 Ctrl+D(EOF)를 누를 때까지 계속됩니다.

변수 이름을 지정하지 않으므로 전체 텍스트 줄이 변수 REPLY에 저장됩니다.