rename 함수 예제

우리는 우리가 텍스트 파일 file.txt, 일부 내용을 가지고 있다고 가정 할 수 있습니다. 따라서 위의 프로그램을 사용하여이 파일의 이름을 바꿀 것입니다. 위의 프로그램을 컴파일하고 실행하여 다음 메시지를 생성하면 파일이름이 newfile.txt 파일로 바뀝니다. 이 예제에서는 find 명령을 사용하여 .jpg(-name `*.jpg`)라는 확장이 있는 파일 목록(-유형 f)을 파이프(|)를 통해 이름을 바꿀 수 있는 방법을 보여 줍니다. 이름을 변경한 다음 표준 입력에서 파일 목록을 읽습니다. 다음 예제에서는 SAS 데이터 집합의 이름을 DATA1에서 DATA2로 변경하고 카탈로그 항목의 이름을 A.SCL에서 B.SCL로 바꿉니다. 지정된 파일이 식에 의해 수정되지 않으면 이름이 바뀌지 않습니다. 명령줄에 파일 이름이 지정되지 않으면 표준 입력을 통해 파일 이름을 읽습니다. 이름 바꾸기() 함수는 헤더 파일에 정의되어 있습니다.

파일 또는 디렉터리 이름을 이전 이름에서 새 이름으로 바꿉니다. 이름 바꾸기 작업은 이동과 동일하므로 이 함수를 사용하여 파일을 이동할 수도 있습니다. 다음 예제에서는 /home/cnd/mod1이라는 파일의 이름을 /home/cnd/mod2로 변경하는 방법을 보여 주며 있습니다. 새 인수에 의해 명명된 링크가 존재하고 파일의 링크 수가 제거될 때 0이 되고 파일이 열려 있지 않으면 파일이 차지하는 공간이 해제되고 파일에 더 이상 액세스할 수 없습니다. 마지막 링크가 제거될 때 하나 이상의 프로세스가 파일을 열면 이름이 바오기 전에 링크가 제거되지만 파일에 대한 모든 참조가 닫힐 때까지 파일 내용의 제거가 연기됩니다. 필요한 경우 디렉터리 간에 이전 이름을 새 이름으로 변경하려고 시도합니다. 파일 및 새 이름의 이름을 바꾸면 덮어씁니다. 디렉터리 및 newname의 이름을 바꾸면 이 함수에서 경고를 내보올 수 있습니다. 유닉스와 같은 운영 체제에서 이름 바꾸기 명령은 정규식을 사용하여 여러 파일의 이름을 바꿉니다.

그것은 래리 월, 펄 프로그래밍 언어의 창조자에 의해 작성되었습니다. 이름() 함수는 파일 이름을 변경해야 합니다. 이전 인수는 이름을 바꿀 파일의 경로 이름을 가리킵니다. 새 인수는 파일의 새 경로 이름을 가리킵니다. 다음 예제에서는 UNIX 운영 환경에서 디렉터리 이름을 바꿉니다. 성공적으로 완료되면 이름 변경()은 0을 반환합니다. 그렇지 않으면 -1이 반환되고 errno는 오류를 나타내도록 설정되어야 하며, 이전 파일이나 새 이름으로 명명된 파일은 변경되거나 생성되지 않습니다. 이 함수를 도입하는 이유 중 하나는 디렉터리를 사용하여 링크() 및 unlink()를 사용하지 않는 구현을 허용하면서 디렉터리를 바꾸는 수단을 가지므로 mkdir()에 의해 만들어진 디렉터리로 디렉터리로 연결되는 링크가 제한되는 것이었습니다. 이전 인수 또는 새 인수의 이름이 기호 링크인 경우 name() 은 기호 링크 자체에서 작동하며 인수의 마지막 구성 요소를 해결하지 않아야 합니다. 이전 인수와 새 인수가 동일한 기존 파일로 확인되면 name()이 성공적으로 반환되고 다른 작업을 수행하지 않습니다. 이전 인수가 기호 링크의 경로 이름을 가리키는 경우 기호 링크의 이름이 바뀝니다.

새 인수가 기호 링크의 경로 이름을 가리키면 기호 링크가 제거됩니다. 반환: 함수의 반환 형식은 정수입니다. 파일이름이 성공적으로 변경되면 0이 반환됩니다. 오류가 나면 영하지 않은 값이 반환됩니다. C 라이브러리 함수 int namename(const char *old_filename, const char *new_filename)을 사용하면 old_filename에서 참조하는 파일 이름이 new_file name으로 변경됩니다. 이전 인수가 디렉터리가 아닌 파일의 경로 이름을 가리키는 경우 새 인수는 디렉터리의 경로 이름을 가리키지 않아야 합니다. 새 인수에 의해 명명된 링크가 있으면 해당 링크가 제거되고 이전 이름이 새 인수로 변경됩니다. 이 경우 새 링크는 이름 바꾸기 작업 전체의 다른 프로세스에 계속 표시되며 작업이 시작되기 전에 새 또는 이전 파일이 참조되는 파일을 참조해야 합니다. 쓰기 액세스 권한은 이전 디렉터리와 새 디렉터리를 포함하는 디렉터리 모두에 필요합니다.

Share Button
Posted in Uncategorized.