Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 가장 일반적인 POSIX 시스템 호출

<시간/>

posix 모듈은 UNIX 환경에서 작동합니다. 운영 체제 기능을 제공합니다.

이 모듈을 직접 가져오면 안 됩니다. os 모듈을 사용할 수 있습니다. os 모듈은 UNIX에서 posix 모듈의 상위 집합으로 작동합니다. 비 Unix 시스템에서는 posix를 사용할 수 없지만 os는 일부 기능이 더 적은 상태로 사용할 수 있습니다.

posix 모듈을 사용하려면 다음을 사용하여 가져와야 합니다.

import posix

POSIX 모듈에는 다양한 메소드와 상수가 있습니다.

일정한 posix.environ

Environ은 사전 개체입니다. 키와 값을 보유하고 있습니다. 키와 값은 UNIX의 경우 바이트 유형입니다. 예를 들어, 환경[b'HOME']은 시스템의 홈 디렉토리를 표시합니다.

이 사전의 일부 항목을 수정해도 execv(), popen() 등과 같은 다른 메서드의 인수에는 영향을 미치지 않습니다. 환경을 변경하려면 execve() 메서드에 환경을 전달해야 합니다. 그렇지 않으면 system() 또는 popen() 메서드에 대한 명령 문자열에 변수 할당 및 내보내기 문을 추가하십시오.

방법 posix.open(file_name, 모드)

POSIX open() 메서드는 로컬 디스크에서 파일을 열 수 있습니다. 파일 설명자를 반환합니다. 하나의 파일 설명자가 닫히면 open() 메서드는 새 파일에 대해 동일한 설명자를 다시 사용합니다.

방법 posix.read(file_descriptor, 크기)

read() 메소드는 파일 디스크립터를 사용하여 파일 내용을 읽는 데 사용됩니다. 또한 읽는 데 최대 제한이 걸립니다. 디렉토리를 지정할 수 있지만 디렉토리가 없으면 메소드가 현재 디렉토리를 선택합니다.

예시 코드

import posix
fruit_fd = posix.open("fruits", 0)
print(fruit_fd) #The File Descriptor
val = posix.read(fruit_fd, 512)
   print(val)
      print("The Home Directory: " + str(posix.environ[b'HOME']))

출력

$ python3 posix_example.py
3
b'Mango\nOrange\nBanana\nApple\nGuava\nGrape\nRaspberry\nBlueberry\nPineapple\nWatermelon\n'
The Home Directory: b'/home/unix_user