std::filesystem::copy_symlink

심볼릭 링크를 다른 위치로 복사하는 함수예요. 링크 자체를 복사하지 목표를 따르지 않아요. C++17부터 있어요.

출처: cppreference

본문

<filesystem> 헤더에 정의돼 있어요.

void copy_symlink( const std::filesystem::path& from,
                   const std::filesystem::path& to);            // (1) C++17
void copy_symlink( const std::filesystem::path& from,
                   const std::filesystem::path& to,
                   std::error_code& ec ) noexcept;               // (2) C++17

심볼릭 링크를 다른 위치로 복사해요.

    1. from이 파일인지 디렉터리인지에 따라 fcreate_symlink 또는 create_directory_symlink라고 할 때, f(read_symlink(from), to)를 호출하듯 동작해요.
    1. fcreate_symlink 또는 create_directory_symlink일 때 f(read_symlink(from, ec), to, ec)를 호출하듯 동작해요.

매개변수

  • from — 복사할 심볼릭 링크의 경로
  • to — 새 심볼릭 링크의 대상 경로
  • ec — 예외 없는 버전에서 오류 보고용 출력 매개변수

반환값

(없음)

예외

noexcept로 표시되지 않은 오버로드는 메모리 할당이 실패하면 std::bad_alloc을 던질 수 있어요.

    1. OS API 오류가 있으면 from을 첫 경로 인자, to를 두 번째 경로 인자, OS 오류 코드를 오류 코드 인자로 삼아 std::filesystem::filesystem_error를 던져요.
    1. OS API 호출이 실패하면 ec에 OS 오류 코드를 설정하고, 오류가 없다면 ec.clear()를 실행해요.

더 알아보기 (Learn more)

cppreference