我正在寻找可以输入的东西来缩短长路。这条路径恰好指向一个单独的硬盘驱动器,我希望这会有所帮助。
背景
- 我们公司为我们提供了 Ubuntu 机器,其中包含一个系统驱动器和一个更大、更快的工作驱动器。
- 公司政策规定所有软件开发(意味着编译可执行代码,但并非所有工作)都必须在特定文件夹中完成。我们的防病毒软件已配置为不阻止或隔离特定目录结构中更改的可执行文件。不幸的是(我不确定我是否遵循这部分的详细信息)为了防止恶意软件感染这些列入白名单的目录,它们有多个级别。换句话说,所有的开发工作都必须在一条任意长的路径的尽头完成。
- 我已经成功地将大硬盘挂载到了策略指定的路径。换句话说,长而任意的路径指向(在 DOS 中)我称之为驱动器的根目录。
我想要的是
- 能够键入
cd foo
并让操作系统执行cd /my/company/arbitrary/path
- 能够使用其他 Linux 命令来复制/访问文件并获得类似的替换。
- 理想情况下,虽然这不是必需的,但我希望命令提示符显示路径的缩短形式。
我的问题
- 如果我使用“符号链接”或“软链接”让操作系统自动执行此替换,这会满足我的需求,还是有可能影响我的工作流程的限制?(提醒:并非我所有的工作都将在此驱动器上完成。)
- 有没有更聪明的方法来做到这一点?我可以利用路径实际上“指向”物理设备的安装点(或“根”)这一事实吗?
- 当我在工作区域内时,是否可以执行其他技巧来缩短命令提示符以显示当前工作目录的用户友好的较短版本?
通常的处理方法是:
在本地目录中创建符号链接
您现在可以
cd foo
从本地目录执行此操作,这将带您到/very/long/path/to/some/folder/hidden/deep/in/the/file/system
. 根据您的系统设置方式,您可能必须使用cd -P foo
您的设置来识别您是否/very/long/path/to/some/folder/hidden/deep.in/the/file/system
在~/foo
. 为了显示:现在,做同样的事情,但使用
cd -P
:为命令创建别名。打开你的 shell 的配置文件(
~/.bashrc
如果你正在使用,请使用bash
)并添加以下行:然后,保存文件,打开一个新终端,然后运行
cdfoo
. 这将带你直接到/very/long/path/to/some/folder/hidden/deep.in/the/file/system
.将名称存储在变量中。打开您的
~/.profile
文件(或者~/.bash_profile
如果该文件已经存在并且您正在使用bash
)并添加以下行:现在,要么注销并重新登录,要么运行
. ~/.profile
以读取新的变量定义。从现在开始,您将能够执行cd $foo
并移动到目标目录。请注意,如果您的路径包含空格或任何其他空格或通配符,您应该引用变量:cd "$foo"
。在上面的三个选项中,第一个(符号链接)和第三个(变量)可以让你做任何你想做的事情。使用符号链接,您可以
cd foo
和cp bar/file foo/
其他一切。当您cd
进入提示时,提示中将显示什么取决于提示的设置方式。foo="/my/company/arbitrary/path"
然后你可以cd "$foo"
等等。如果路径中没有空格,你可以错过引号以便于输入。