我想在Linux中创建一个符号链接。我编写了这个Bash命令,其中第一个路径是我想要链接到的文件夹,第二个路径是编译的源代码。
ln -s '+basebuild+'/IpDome-kernel/kernel /home/build/sandbox/gen2/basebuild/IpDome-kernel/kernal
这是正确的吗?
我想在Linux中创建一个符号链接。我编写了这个Bash命令,其中第一个路径是我想要链接到的文件夹,第二个路径是编译的源代码。
ln -s '+basebuild+'/IpDome-kernel/kernel /home/build/sandbox/gen2/basebuild/IpDome-kernel/kernal
这是正确的吗?
当前回答
有两种类型的链接:
符号链接:指指示另一个文件的抽象位置的符号路径
硬链接:指物理数据的特定位置。
在您的案例中,符号链接:
ln -s source target
你可以参考http://man7.org/linux/man-pages/man7/symlink.7.html
你可以创建太硬的链接
文件的硬链接与原始目录条目无法区分;对文件的任何更改实际上都与用于引用文件的名称无关。硬链接通常不指目录,也可能不跨越文件系统。
ln source link
其他回答
如果您位于要创建符号链接的目录中,则忽略第二个路径。
cd myfolder
ln -s target
它将在myfolder中创建目标的符号链接。
常规语法
ln -s TARGET LINK_NAME
ln -s EXISTING_FILE_OR_DIRECTORY SYMLINK_NAME
在Linux上创建符号链接或软链接:
打开Bash提示符并键入下面提到的命令以创建文件的符号链接:
A) 转到要创建软链接的文件夹,然后按如下所述键入命令:
$ ln -s (path-to-file) (symbolic-link-to-file)
$ ln -s /home/user/file new-file
B) 转到新文件名路径并键入:
$ls-lrt(查看新文件是否链接到该文件)
例子:
user@user-DT:[~/Desktop/soft]# ln -s /home/user/Desktop/soft/File_B /home/user/Desktop/soft/File_C
user@user-DT:[~/Desktop/soft]# ls -lrt
total 0
-rw-rw-r-- 1 user user 0 Dec 27 16:51 File_B
-rw-rw-r-- 1 user user 0 Dec 27 16:51 File_A
lrwxrwxrwx 1 user user 31 Dec 27 16:53 File_C -> /home/user/Desktop/soft/File_B
Note: Where, File_C -> /home/user/Desktop/soft/File_B Means, File_C is symbolically linked to File_B
要创建新的符号链接(如果符号链接已存在,将失败):
ln -s /path/to/file /path/to/symlink
要创建或更新符号链接,请执行以下操作:
ln -sf /path/to/file /path/to/symlink
ln -s source_file target_file
http://unixhelp.ed.ac.uk/CGI/man-cgi?ln