심볼릭 링크를 링크 된 파일의 복사본으로 바꾸는 방법은 무엇입니까?


15

(단일, 배치 파일 시스템 처리가 필요하지 않음) symlink가 있으면 링크하는 파일의 사본으로 대체하기 위해 어떤 명령 행을 사용해야합니까?

답변:


16
cp --remove-destination "$(readlink <symlink>)" <symlink>

1
데비안 환경에서 실행할 때 "-bash : 예기치 않은 토큰`newline '근처의 구문 오류"오류가 발생했습니다.
Lin Song Yang

<symlink>상대 경로에 대한 심볼릭 링크 인 경우 는 <symlink>현재 디렉토리에있는 경우에만 작동합니다 . 을 사용하고 싶을 수도 있습니다 readlink -f. 또는 다음을 사용하는 경우 zsh:cp --remove-destination path/to/symlink(:A) path/to/symlink
Stéphane Chazelas

0

당신은 할 수 있습니다 :

file=path/to/symlink
{ rm -f -- "$file" && cat > "$file"; } < "$file"

(권한 및 소유권과 같은 파일의 메타 데이터가 아닌 내용 만 복사 함).

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.