Off*_*rmo 7 linux filesystems rhel symlink
如何根据当前用户创建一个指向不同位置的可变符号链接?是否可以?我应该用别的东西代替吗?挂载点?如何?
如果您遇到不同的解决方案,则会出现以下问题:
在工作中,我们是一个使用 SVN 在 Unix 上开发的团队。我们都使用相同的开发机器(远程)。所以我们在不同的地方结账(不是 /home,而是安装在另一个磁盘上的特定目录,比如 /svn/[userlogin]/)。
我们使用脚本和工具。一些特殊工具具有复杂的配置和项目文件,其中包括源文件的路径。这很容易出错,我们会因为错误的配置或需要一直重新创建的“项目”而损失大量时间。我想与所有开发人员共享这个复杂的配置和项目文件。
但是为了在处理不同的结账时共享这些文件,我必须:
在此之前,我们使用 clearcase,它为每个人(假设 /vob)安装了相同路径的视图,每个开发人员都可以看到他或她自己的视图。那很方便。
我怎么能做类似的事情?你能想到另一种解决方案吗?谢谢。
- 编辑 -
我在想 Eclipse IDE。我想分享一些工作区设置、项目和运行/调试配置。Eclipse(+插件)设置由 50 多个小文件组成,因此编辑它们是不可能的。
由于固定的“/vob”路径,对于每个终端,它会自动指向我们选择的“视图”,使用 clearcase 很容易。
我想要类似的东西。我想要一个/svn/mysource,对于每个终端,它指向用户当前结帐,它位于用户相关的路径中。
这取决于应用程序配置是否可以处理命令或插入 shell 变量。
bash 登录 shell 在登录 shell 中设置环境变量 LOGNAME。
如果应用程序在配置中插入 shell 变量,则可以在配置中使用 /svn/${LOGNAME}/ 。然后,您可以与每个用户共享通用配置,引用她自己的路径。
如果应用程序不在配置中插入 shell 变量,那么您可以为每个用户创建一个符号链接,对 /svn 路径进行通用引用,并在共享配置中使用通用名称。
who将列出当前用户名。
如果您想编写一个脚本,每个用户在设置时执行一次以创建符号链接。
ln -s /svn/$(who) /svn/anyuser
Run Code Online (Sandbox Code Playgroud)
然后共享引用 /svn/anyuser 的通用配置(选择适合您的通用名称)
当心菜鸟用户不知道链接的使用并将其删除(您刚刚被提升为管理员:)