[linux] Linux에서 파일을 심볼릭 링크하려면 어떻게해야합니까? [닫은]

리눅스에서 심볼릭 링크를 만들고 싶습니다. 첫 번째 경로는 링크하려는 폴더이고 두 번째 경로는 컴파일 된 소스 인이 Bash 명령을 작성했습니다.

ln -s '+basebuild+'/IpDome-kernel/kernel /home/build/sandbox/gen2/basebuild/IpDome-kernel/kernal

이 올바른지?



답변

새 심볼릭 링크를 만들려면 (심볼릭 링크가 이미 존재하지 않으면 실패) :

ln -s /path/to/file /path/to/symlink

심볼릭 링크를 만들거나 업데이트하려면

ln -sf /path/to/file /path/to/symlink


답변

ln -s TARGET LINK_NAME

어디는 -s그것을 상징한다.


답변

ln -s EXISTING_FILE_OR_DIRECTORY SYMLINK_NAME


답변

ln -s target linkName

당신은 여기 맨 페이지를 볼 수 있습니다 :

http://linux.die.net/man/1/ln


답변

(ASCII 그림은 천 자의 가치가 있기 때문에.)

화살표는 유용한 니모닉 일 수 있습니다. 특히 Emacs에서 거의 정확하게 보이는 방식이기 때문입니다.

큰 그림이므로 Windows 버전과 혼동되지 않습니다.

리눅스 :

ln -s target <- linkName

윈도우 :

mklink linkName -> target

이것들을 다음과 같이 볼 수도 있습니다.

ln -s "to-here" <- "from-here"
mklink "from-here" -> "to-here"

from-here(가) 동안, 생성 될 아직 존재하지 않아야 to-here이미 (IIRC)이 존재한다.

(나는 항상 다양한 명령과 인수가 기존 위치 또는 만들어야 할 위치와 관련이 있는지에 대해 혼란스러워합니다.)

편집 : 그것은 여전히 ​​나를 위해 천천히 침몰하고 있습니다. 노트에 쓴 다른 방법이 있습니다.

ln -s (target exists) (link is made)
mklink (link is made) (target exists)


답변

ln -s source_file target_file

http://unixhelp.ed.ac.uk/CGI/man-cgi?ln


답변

원래 질문에 :


'ln -s '+basebuild+'/IpDome-kernel/kernel /home/build/sandbox/gen2/basebuild/IpDome-kernel/kernal'

파일 / 디렉토리에서 심볼릭 링크 ( -s)가 생성됩니다 .

<basebuild>/IpDome-kernel/kernel

새 링크로

/home/build/sandbox/gen2/basebuild/IpDome-kernel/kernal

기억하는 데 도움이되는 몇 가지 방법이 있습니다.

먼저에 대한 맨 페이지가ln 있습니다. Google에서 “man ln”을 검색하여 액세스하거나 터미널 창을 열고 입력 man ln하면 동일한 정보를 얻을 수 있습니다. 매뉴얼 페이지에는 다음과 같이 명확하게 설명되어 있습니다.

[OPTION] … [-T] TARGET LINK_NAME (첫 번째 형식)


매번 맨 페이지를 검색하거나 읽을 필요가 없다면 모든 nix 명령이 동일한 방식으로 작동 한다는 것을 기억하는 것이 더 쉬울 것입니다:

cp /file/that/exists /location/for/new/file
mv /file/that/exists /location/its/moving/to
ln /file/that/exists /the/new/link

cp 현재 존재하는 파일 (첫 번째 인수)을 새 파일 (두 번째 인수)에 복사합니다.
mv 현재 존재하는 파일 (첫 번째 인수)을 새 위치 (두 번째 인수)로 이동

마찬가지로 ln현재 존재하는 파일 (첫 번째 인수)을 새 링크 (두 번째 인수)에 연결합니다. *


마지막으로 제안하고 싶은 옵션은 읽기 쉽고 기억하기 쉬운 사용자 매뉴얼 페이지를 만들 수 있다는 것입니다. 필요한 힌트를 제공하는 간단한 쉘 스크립트를 작성하십시오. 예를 들어 :

.bash_aliases 파일에서 다음과 같은 것을 배치 할 수 있습니다 :

commandsfx() {
    echo "Symlink:  ln -s /path/to/file /path/to/symlink"
    echo "Copy:     cp /file/to/copy /destination/to/send/copy"
}

alias 'cmds'=commandsfx

그런 다음 필요할 때 명령 줄에서 입력 cmds하면 빠르게 읽고 이해할 수있는 방식으로 올바른 구문을 다시 얻을 수 있습니다. 필요한 정보를 얻고 자하는대로 이러한 기능을 고급으로 만들 수 있습니다. 대화식으로 만들 수도 있으므로 프롬프트를 따라야합니다.

makesymlink() {
    echo "Symlink name:"
    read sym
    echo "File to link to:"
    read fil
    ln -s $fil $sym
}

alias 'symlink'=makesymlink

*-분명히 그들은 모두 서로 다른 매개 변수를 취하고 다른 일을 할 수 있으며 파일뿐만 아니라 디렉토리에서도 작동 할 수 있지만 전제는 동일
합니다.-bash 쉘을 사용한 예제