한 폴더에서 다른 이름으로 다른 폴더로 심볼릭 링크를 만드시겠습니까?

한 폴더에서 다른 이름으로 다른 폴더로 심볼릭 링크를 만드시겠습니까?

두 개의 폴더가 있는데 그 중 하나가 내 웹 서버 루트입니다. Git을 최신 상태로 유지할 수 있도록 프로젝트 폴더에 연결하고 싶습니다.

내가 이렇게 하려고 하면:

ln -s /home/user/project  /var/www/html

시스템은 다음과 같은 폴더를 생성합니다.프로젝트html 폴더 내에서 해당 링크를 연결합니다. 'html' 디렉토리가 다음 내용을 가리키도록 링크할 수 있는 방법이 있습니까?프로젝트? 이름이 같아야 하나요?

메모: 숨겨진 파일도 여러 개 연결해야 합니다. 을 사용하여 이 작업을 수행할 수 있나요 ln?

답변1

에서 man ln:

기본적으로 각 대상(새 링크 이름)은 이미 존재하지 않아야 합니다.

이미 이라는 디렉토리가 있으므로 링크는 대상 이름(예: )을 갖는 html내부에 생성됩니다 ./var/www/htmlproject

/var/www/html다음 을 가리키는 심볼릭 링크를 갖고 싶다면 사전에 /home/user/project디렉토리가 없어야 합니다 . html따라서 /var/www다음을 실행하면 원하는 심볼릭 링크가 생성됩니다(확실하지 않으면 이 작업을 수행하지 마십시오).

ln -s /home/user/project /var/www/html

메모: 후행 슬래시(예: )를 사용하면 ln -s /home/user/project /var/www/html/오류가 발생합니다 ln: target '/var/www/html' is not a directory: No such file or directory.

예는 다음과 같습니다.

$ pwd
/home/user/test/askubuntu

$ ls -l
total 4
drwxrwxr-x 2 user user 4096 Mar 25 00:16 foo

$ ln -s /home/user/test/bar /home/user/test/askubuntu/foo

$ ls -l
total 4
drwxrwxr-x 2 user user 4096 Mar 25 00:17 foo

$ cd foo/
$ ls -l
total 0
lrwxrwxrwx 1 user user 25 Mar 25 00:17 bar -> /home/user/test/bar

$ cd ..
$ rm -r foo/

$ ls -l
total 0

$ ln -s /home/user/test/bar /home/user/test/askubuntu/foo

$ ls -l
total 0
lrwxrwxrwx 1 user user 25 Mar 25 00:18 foo -> /home/user/test/bar

그리고 그렇습니다. 숨겨진 파일의 심볼릭 링크를 만들 수 있습니다.

답변2

html 디렉토리가 아래에 생성되지 않았는지 확인하십시오 /var/www/.

그러면 명령은 다음과 같습니다.ln -s -T /home/user/project /var/www/html

관련 정보