이 문서의 예에서는 Python 파일 읽기 및 쓰기 작업과 Linux 셸 변수 명령을 대화형으로 실행하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.
파일 작업 관련 시스템 호출
Create
int creat(const char *filename, mode_t mode);
매개변수 mode는 새로 생성된 파일에 대한 액세스 권한을 지정하며, umask와 함께 파일의 최종 권한(mode&umask)을 결정합니다. 여기서 umask는 파일이 생성될 때 제거해야 하는 일부 액세스 권한을 나타냅니다. 호출하는 함수는 int umask(int newmask)입니다.
Open
int open(const char *pathname, int flags);
pathname은 열려고 하는 파일 이름입니다(경로 이름 포함, 기본값은 현재 경로 아래에 있음)
flags open 플래그
-
O_RDONLY 읽기 전용 모드로 파일 열기
O_WRONLY 파일을 쓰기 전용 모드로 열기
O_RDWR 읽기-쓰기 모드로 파일 열기
O_APPEND 추가용 파일 열기
O_CREAT 파일 만들기
O_EXEC O_CREAT를 사용하고 파일 이미 존재하면 오류가 발생합니다
-
O_NOBLOCK 비차단 방식으로 파일 열기
O_TRUNC 파일이 이미 존재하는 경우 파일 내용 삭제
int open (const char * 경로명 , int 플래그, mode_t 모드)
플래그가 O_CREATE인 경우 모드 플래그를 지정하여 파일 액세스 권한을 나타냅니다.
S_IRUSR 사용자가 읽을 수 있음
S_IWUSR 사용자가 쓸 수 있음
-
S_IXUSR 사용자 실행 가능
S_IRWXU 사용자 읽기, 쓰기, 실행 가능
S_IRGRP 그룹 읽기 가능
-
S_IWGRP 그룹 쓰기 가능
S_IXGRP 그룹 실행 가능
S_IRWXG 그룹 읽기, 쓰기, 실행 가능
-
S_IROTH 다른 사람들도 읽을 수 있음
S_IWOTH 기타 사용자는 쓰기 가능
S_IXOTH 기타 사용자는 실행할 수 있음
S_IRWXO 기타 사용자는 읽기, 쓰기, 실행 가능
S_ISUID 세트 사용자의 실행 ID
S_ISGID 그룹의 실행 ID 설정
mode 플래그는 숫자를 사용하여 파일 권한을 나타낼 수도 있습니다.
각 숫자는 1(실행 권한), 2( 쓰기 권한), 4(읽기 권한), 0(없음) 또는 이들 값의 합계입니다.
첫 번째 숫자는 사용자 ID 설정
두 번째 숫자는 그룹 ID 설정
-
세 번째 숫자는 사용자 고유 권한
-
네 번째 숫자는 그룹의 권한을 나타냅니다
다섯 번째 숫자는 다른 사람의 권한을 나타냅니다
open("test", O_CREAT, 10705);
위 진술은 동등하다 대상:
open("test", O_CREAT, S_IRWXU | S_IROTH | S_IXOTH | S_ISUID );
읽기 및 쓰기
int read(int fd, const void *buf, size_t length);
int write(int fd , const void *buf, size_t length);
매개변수 fd 파일 설명자, buf는 버퍼에 대한 포인터, length는 버퍼의 크기(바이트 단위), 반환 값은 실제로 읽고 쓴 바이트 수입니다. .
read()는 파일 설명자 fd가 지정한 파일에서 buf가 가리키는 버퍼로 length 바이트를 읽습니다. 반환 값은 읽은 실제 바이트 수입니다.
write() 구현 buf가 가리키는 버퍼의 length 바이트를 파일 설명자 fd가 가리키는 파일에 쓰고 반환 값은 실제로 쓴 바이트 수입니다.
Positioning
임의의 파일에 대해 읽고 쓸 위치를 무작위로 지정할 수 있습니다.
int lseek(int fd, offset_t offset, int whence);
lseek()는 파일 읽기 및 쓰기 포인터를 이동합니다. whence(음수일 수 있음) 바이트를 기준으로 한 오프셋입니다. 작업이 성공하면 파일 헤더를 기준으로 한 파일 포인터의 위치가 반환됩니다.
매개변수 whence는 다음 값을 사용할 수 있습니다.
SEEK_SET: 파일의 시작 부분을 기준으로 합니다.SEEK_CUR: 상대 파일 읽기 및 쓰기 포인터의 현재 위치입니다.
SEEK_END: 파일의 끝을 기준으로 합니다.
Close
int close(int fd);
C 라이브러리 함수 파일 작업 - 특정 운영 체제 플랫폼과 무관
생성 및 열기
FILE *fopen(const char *path, const char *mode );
fopen()은 지정된 파일 filename 열기를 구현합니다. 여기서 mode는 열기 모드입니다. Linux 시스템은 바이너리 파일과 텍스트 파일을 구분하지 않습니다.
mode 값
- r, rb는 읽기 전용 모드로 열립니다.
a, ab는 추가 모드로 열립니다. 파일이 없으면 파일을 생성하세요
r+, r+b, rb+ 읽기 및 쓰기로 열기
w+, w+b, wh+ 읽기로 열기 그리고 Open을 씁니다. 파일이 없으면 새 파일이 생성되고, 그렇지 않으면 파일이 잘립니다.
a+, a+b, ab+ 읽기 및 추가가 가능합니다. 파일이 없으면 새 파일을 만듭니다
읽고 쓰기
int fgetc(FILE *stream);
int fputc(int c, FILE *stream);
char *fgets(char *s , int n , FILE *stream);
int fputs(const char *s, FILE *stream);
int fprintf(FILE *stream, const char *format, ...);
int fscanf(FILE *stream, const char *format , ...);
size_t fread(void *ptr, size_t size, size_t n, FILE *stream);
size_t fwrite(const void *ptr, size_t size, size_t n, FILE *stream);
int fsetpos(FILE *stream, fpos_t *pos);
nt fsetpos(FILE *stream, const fpos_t *pos);
int fseek(FILE *stream, long offset, int whence);
fread()는 읽기를 구현합니다. n개의 필드를 스트림하고, 각 필드는 size 바이트이고, 읽은 필드는 ptr이 가리키는 문자 배열에 들어가고, 읽은 실제 필드 수를 반환합니다.
write()는 버퍼 ptr이 가리키는 배열에서 n개의 필드를 스트림으로 작성하는 것을 구현합니다. 각 필드의 길이는 바이트 크기이며 실제로 작성된 필드 수를 반환합니다.
Close
int fclose (FILE *stream);
Linux 파일 시스템 디렉토리 구조
/bin----가장 자주 사용되는 기본 명령을 저장합니다. 초 ls, cp, mkdir 등의 파일은 모두 실행 가능합니다. /dev- ---장치 파일 저장 디렉터리, 응용 프로그램은 이러한 파일을 읽고, 쓰고, 제어하여 실제 장치에 액세스할 수 있습니다.
/etc----사용자 계정 및 비밀번호 구성 파일과 같이 시스템 관리에 필요한 구성 파일 및 하위 디렉터리입니다.
/home----일반 사용자의 홈 디렉터리입니다. 일반적으로 디렉터리 이름은 사용자 계정의 이름을 따서 지정됩니다.
/lib----라이브러리 파일 저장 디렉터리, 시스템의 가장 기본적인 동적 링크 공유 라이브러리로 Windows의 DLL 파일과 유사합니다.
/lost+found----일반적으로 시스템이 예기치 않게 충돌하거나 컴퓨터가 예기치 않게 종료되면 일부 파일 조각이 생성되어 여기에 배치됩니다.
/mnt----다른 파일 시스템을 임시로 마운트하는 것이 편리합니다. 예를 들어 광 드라이브가 /mnt/에 마운트된 경우 광 드라이브의 내용을 볼 수 있습니다. 이 디렉토리를 입력하여
-
media----U 디스크, 광학 드라이브 등과 같은 일부 장치를 자동으로 식별하고 이 디렉토리에 마운트합니다.
/opt----호스트에 추가 소프트웨어가 설치되는 디렉터리
/proc----운영 체제가 실행될 때 프로세스 및 커널 정보(예: CPU, 하드 디스크 파티션, 메모리 정보 등)가 여기에 저장됩니다. 시스템 메모리의 매핑으로 메모리에 존재하며 이 디렉터리에 직접 접근하여 시스템 정보를 얻을 수 있습니다.
/root---최고 권한을 가진 사용자의 홈 디렉터리
/sbin----최고 권한을 가진 사용자의 실행 명령이 있는 디렉터리 임시 파일을 저장하려면 이 디렉토리
/tmp----에서 명령을 실행하세요.
/usr------시스템 응용 프로그램 및 파일(예: 명령 및 도움말 파일)이 프로그램을 저장하는 디렉터리로, Windows의 프로그램 파일 디렉터리와 유사합니다.
/var------커널의 로그 파일
-
/sys----
과 같이 자주 수정되는 디렉토리가 이 디렉토리에 배치됩니다. 장치 트리 직관적인 반영. 커널 개체가 생성되면 해당 파일과 디렉터리도 커널 개체 하위 시스템에 생성됩니다. - /initrd---시작 프로세스 중 initrd 이미지가 임시 루트 파일 시스템으로 사용되는 경우 해당 이미지에 대해 /linuxrc를 실행하여 실제 루트 파일 시스템을 마운트한 후 원본 RAM 파일 시스템은 /initrd 디렉토리에 매핑됩니다.
- Linux 파일 시스템 및 장치 드라이버
관련 권장 사항:
linux 상위 디렉터리 권한은 하위 디렉터리 파일 작업에 영향을 미칩니다. -
Linux 셸 변수 명령을 사용하여 Python 파일 읽기 및 쓰기 작업을 대화식으로 실행하는 방법
위 내용은 Linux 파일 작업의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

Linux 시스템에서 시작시 특정 키를 누르거나 "sudosystemctlrescue"와 같은 명령을 사용하여 유지 보수 모드를 입력 할 수 있습니다. 유지 보수 모드는 관리자가 파일 시스템 수리, 비밀번호 재설정, 보안 취약성 패치 등과 같은 간섭없이 시스템 유지 관리 및 문제 해결을 수행 할 수 있습니다.

Linux 초보자는 파일 관리, 사용자 관리 및 네트워크 구성과 같은 기본 작업을 마스터해야합니다. 1) 파일 관리 : mkdir, touch, ls, rm, mv 및 cp 명령을 사용하십시오. 2) 사용자 관리 : userAdd, passwd, userdel 및 usermod 명령을 사용합니다. 3) 네트워크 구성 : ifconfig, echo 및 ufw 명령을 사용하십시오. 이러한 운영은 Linux 시스템 관리의 기초이며, 마스터하면 시스템을 효과적으로 관리 할 수 있습니다.

이 기사는 Linux의 Sudo 권한을 관리하는 방법, 보안 및 보안 모범 사례를 포함하여 Linux의 Sudo 권한을 관리하는 방법을 설명합니다. 주요 초점은 /etc /sudoers를 안전하게 편집하고 액세스를 제한하는 데 중점을 둡니다. 문자 수 : 159

이 기사는 Google Authenticator를 사용하여 Linux에서 SSH에 대한 2 단계 인증 (2FA) 설정, 설치, 구성 및 문제 해결 단계에 대한 가이드를 제공합니다. Enhanced SEC와 같은 2FA의 보안 이점을 강조합니다.

이 기사는 Linux 시스템 성능을 모니터링하기위한 Top, HTOP 및 VMSTAT 사용에 대해 설명하고 효과적인 시스템 관리를위한 고유 한 기능 및 사용자 정의 옵션을 자세히 설명합니다.

기사는 APT, YUM 및 DNF를 사용하여 Linux의 소프트웨어 패키지 관리, 설치, 업데이트 및 제거를 다루는 것에 대해 설명합니다. 다양한 분포에 대한 기능과 적합성을 비교합니다.

이 기사는 패턴 매칭, 파일 검색 및 텍스트 조작을 위해 Linux에서 정규식 (Regex)을 사용하는 방법, 구문, 명령 및 Grep, Sed 및 Awk와 같은 도구를 자세히 설명합니다.

이 기사는 정적 IP, DHCP 및 DNS 구성 설정에 중점을 둔 Linux 네트워킹 구성에 대한 안내서를 제공합니다. 구성 파일을 편집하고 네트워크 서비스를 다시 시작하여 변경 사항을 적용하기위한 단계를 자세히 설명합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

뜨거운 주제



