Articles of 符号链接

如何将常规文件转换为Linux上的符号链接

我正在写一个(un)归档工具,它的devise方式是在它检查特殊属性之前首先从归档创build一个常规文件,并且可能会决定这个项目实际上是一个符号链接。 注意:在更多的人误解我想要做一个文件的符号链接之前 。 不,我将符号链接数据,即其path写入文件,然后我想告诉文件系统这是一个符号链接 我一直在OS X上进行开发,只需简单地设置Type和Creator代码就可以将常规文件转换为符号链接。 现在我想让这个代码在Linux上工作。 所以我喜欢在那里find类似的方式。 我知道创build符号链接的正常方法是调用symlink()函数,但是我想知道是否还有一种方法可以将常规文件更改为符号链接,就像在OSX的BSD系统中一样,这样我不必重构我的工作代码太多? 有lstat(),它返回st_mode最高位的文件types。 现在我想知道这个模式字段是否也有类似的setter函数。

遵循SVN中的符号链接

我有一个Linux目录(并不需要任何Windows结帐): /home/me/projects/project1 在这个项目中,我需要SVN(1.8.8)来遵循一个符号链接“link1”: /home/me/projects/project1/link1/<some_directories_and_files> 但SVN不会让我这样做,它只是添加link1而不是它的内容。 如果我尝试添加其内容,则会出现错误: svn add link1/* svn: E145001: Can't schedule an addition of '/home/me/projects/project1/link1/first_directory' below a not-directory node 我试图转换链接到硬链接,但我不能这样做: ln /path/to/my/linked/directory link1 ln: '/path/to/my/linked/directory': hard link not allowed for directory 任何想法? 你如何处理这种configuration? 我只需要从/home/me/projects/project1 svn commit一个简单的svn commit

符号链接给“权限被拒绝”…为根

我写了一个简单的脚本来自动创build一个符号链接。 #!/pseudo today = "/tmp/" + date("Ymd") exec("ln -sf " + today + " /tmp/today") 够简单; 得到今天的date,并作出符号链接。 最好在午夜之后用-f运行,所以它只是在原地更新它。 这工作得很好! …为我的用户。 xkeeper /tmp$ ls -ltr drwxrwxrwx xkeeper xkeeper 2014-10-21 lrwxrwxrwx xkeeper xkeeper today -> /tmp/2014-10-21/ xkeeper /tmp$ cd today xkeeper /tmp/today$ cd .. 注意,它工作正常,所有的权限是世界可读的,一切看起来不错。 但是,如果有人想使用这个链接(我们会说,根,但任何其他用户有这个问题),一些非常奇怪的事情发生: root /tmp# cd today bash: cd: today: Permission denied 为什么这是我完全丧失的。 我也试着用ln […]

在Linux中运行时如何在Java中创build符号链接?

在Linux中运行时如何在Java / JVM中创build符号链接? 除了使用Java本地接口(JNI)或者java.lang.Runtime.exec("/bin/ln -s /some/path symlink")什么方法吗? 创build一个符号链接是非常依赖于平台的,但是我主要关心在Linux上运行,如果在Windows中创build一个快捷方式,那么奖励就会很大。

如何移动相对符号链接?

我有很多相对的符号链接,我想移动到另一个目录。 如何在保留正确path的同时移动符号链接(具有相对PATH的链接)?

使用Python查找错误的符号链接

如果我在一个破损的symlink上调用os.stat() ,python会抛出一个OSErrorexception。 这使它find它们很有用。 但是, os.stat()可能会抛出类似的exception。 有没有更确切的方式来检测在Linux下与Python错误的symlinks ?

cd / bash在符号链接上的行为

假设我的文件夹中有〜/ a / b文件夹,文件夹b包含一个名为'symlink'的符号链接。 然后,我在bash中执行以下操作: hm@mach:~$ cd a/b/symlink hm@mach:~/a/b/symlink$ pwd -P /home/hm/a hm@mach:~/a/b/symlink$ cd .. hm@mach:~/a/b$ pwd -P /home/hm/a/b pwd -P打印当前工作目录,取消所有符号链接。 为什么工作目录/ home / hm / a / b在最后,而不是/ home / hm?

基于组件的Web项目目录布局,使用git和符号链接

我正在规划一个linux / apache / php web项目的目录结构,如下所示: 只有www.example.com/webroot/才会暴露在apache中 www.example.com/ webroot/ index.php comp1/ comp2/ component/ comp1/ comp1.class.php comp1.js comp2/ comp2.class.php comp2.css lib/ lib1/ lib1.class.php component/和lib/目录只会在phppath中。 为了使css和js文件在webroot目录中可见,我计划使用符号链接。 webroot/ index.php comp1/ comp1.js (symlinked) comp2/ comp2.css (symlinked) 我试着遵循这些原则: 由组件和库的布局,而不是由文件types,而不是由“公共”或“非公开”,index.php是一个例外,这是为了更容易的发展。 公开网站目录中的最小文件集,并使其他网站无法访问。 将需要公开组件和库的文件编译到公共位置,但仍然镜像布局。 因此,组件和库结构也可以在链接中生成的html代码中看到,这可能有助于开发。 git的使用应该是安全的,并始终工作。 可以按照一些步骤来添加一个符号链接到git,但是之后检查它们或者改变分支应该被安全和清理地处理 git将如何正确处理单个文件的符号链接,有什么需要考虑的? 当涉及到图像,我将需要链接目录,如何处理与git? component/ comp3/ comp3.class.php img/ img1.jpg img2.jpg img3.jpg 他们应该链接在这里: webroot/ comp3/ img/ (symlinked ?) 如果使用符号链接有缺点,也许我可以直接将图像移动到webroot […]

如何在Windows Vista中创build符号链接?

我期望在Windows Vista / 2008计算机上从Java创build符号链接(软链接)。 我很高兴这个想法,我需要打电话给JNI来做到这一点。 虽然我是在实际的C代码后帮助。 什么是适当的系统调用来创build链接? 指向这个问题的一些很好的文档将非常感激。

cygwin winsymlinks:原生不起作用

我现在和cygwin打了很长时间了。 我search了如何使cygwin创buildWindows风格的符号链接。 我尝试了以下内容: export CYGWIN="winsymlinks:native" export CYGWIN="winsymlinks:nativestrict" export CYGWIN="winsymlinks:lnk" 我也尝试出口无瓦特报价。 我也尝试从cygwin / x86和cygwin / x64 对于我的生活 – 我不能让Windows本机符号链接工作。 我正在使用Windows7 / 64位; cygwin版本1.7.25。 我很想得到这个解决scheme。 谢谢。