一:软连接与硬链接
linux上的软连接和window系统上的快捷方式类似,但是还是有一些区别的(毕竟是两个不兼容的系统)。
简单的介绍一下:
ln -s [源文件或者目录] [目标文件或者目录]
将目标文件或目录指向指向源文件或目录。这一点和window的快捷方式相同。
ln -snf (格式同上,用于修改软连接)
添加软连接或者修改软连接的时候,源文件或目录的路径一定要记得使用绝对路径(虽然也可以用相对路径来表示)。
软连接可以像文件一样直接删除。
环境变量与软连接
软连接会在选定的位置上生成镜像文件,不会占用磁盘空间。
而硬链接会将源文件直接复制到指定的位置,占用同样大小的磁盘空间(一般用不到)。
ln 不带参数的为硬链接, 它会生成一个和源文件大小相同的空间。
无论是软连接还是硬链接,文件都保持同步变化。
指向一个文件的所有硬链接都删掉的话文件内容才会被删除掉,软连接只有删除了源链接文件,软连接也就失效了。
常用参数:
-b 删除,覆盖以前建立的链接
-d允许超级用户制作目录的硬链接
-f强制执行
-i交互模式,文件存在则提示用户是否覆盖。
-n把符号链接视为一般目录
-s软连接
-v显示详细的处理过程
二:软连接与环境变量
以我个人的理解,环境变量在linux中,就是在将指定目录的路径添加到path变量中,然后当执行命令时去指定的文件夹中查找相应的程序并执行。
当软件没有安装到path中指定的目录时,系统便会找不到该程序。但是加上程序的相对或者绝对的完整路径便可以执行该程序。
当我们安装软件忘了将软件的安装路径设置到path指定的路径里边时, 这时我们需要打开/etc/profile文件,并将如下代码添加进去:
export PATH=/directory:$PATH //directory为可执行程序所在的目录。
然后再执行source /etc/profile 才能生效。
查看设置的 环境变量
echo $PATH
要是很多软件没有安装在同一个目录,但是我们又想在系统的任何路径快捷的使用该命令,那么,就要设置非常多的环境变量。这么一来,系统的性能便会降低。因为,当执行命令的时候系统会遍历非常多的文件夹。
那么,有没有一种更简单的方法呢??
答案当然是有啦!
那就是软连接! 相当于window系统的快捷方式。将软件的可执行程序建立一个软连接直接放到path指定的目录中,当在系统的任意位置执行该命令的时候,系统也能够找到相应的可以行程序。
在设置软连接的时候应该注意的一点:因为命令是在系统的任意位置执行的,所以在设置软连接的时候要注意将源文件路径写成绝对路径,以防系统找不到执行的程序。