我可以添加快捷方式来替换 Linux 中的路径吗?

我可以添加快捷方式来替换 Linux 中的路径吗?

例如我总是走这条路:

/用户/某物/某些文件夹/某处

但我不想打字

cd /用户/某物/某些文件夹/某处

我一直在终端中,我可以用一些简写来做到这一点吗?例如,我可以这样做吗

cd 命令位置

替换路径?

答案1

CDPATH您可以为此使用环境变量。摘自 Bash 手册页:

路径

cd 命令的搜索路径。这是以冒号分隔的目录列表,shell 在其中查找 cd 命令指定的目标目录。示例值为“.:~:/usr”。

根据您的情况,您可以设置

export CDPATH=.:/user/something/somefolders

在 中~/.bashrc,然后输入cd somewhere就会带您到(假设当前目录中/user/something/somefolders/somewhere没有命名的目录)。somewhere

或者,如果您不想用文件夹的somewhere真实名称来引用它,您可以创建一个隐藏目录,其中包含指向 的符号链接,/user/something/somefolders/somewhere并使用您要使用的名称。它还可以包含指向您经常访问的任何其他目录的链接。然后设置CDPATH为包含该隐藏目录的路径。但请注意,使用此方法,如果您cd somewhere然后cd ..,您将进入隐藏目录。这对您来说可能是也可能不是问题。

答案2

对于这样的事情我经常使用两个快捷方式:

别名

别名 somedir='cd /home/john/www/something/'

然后您可以键入somedir以转到该目录。将这些添加到您的.bashrc

符号链接

ln -s /长/路径/到/某些/其他/文件夹/快捷方式

这将创建一个/shortcut链接到的文件/long/path/to/some/other/folder。然后您可以输入 cd /shortcut。这样做的缺点是它会很快填满您的根目录(或您放置链接的任何目录)。我更喜欢别名。

答案3

我倾向于一直使用 bash 交互式搜索。试试看。使用以下命令调用它:Ctrl+R并开始输入路径的某些部分,例如某处。可能你的 cd 命令会弹出。:)

答案4

查看“别名”命令。

在 csh 中:

alias commandplace "cd /user/something/somefolders/somewhere"

在 sh 中:

alias commandplace="cd /user/something/somefolders/somewhere"

但我喜欢符号链接解决方案:

ln -s /user/something/somefolders/somewhere ~/commandplace 

注意:ln 接受参数的顺序与 cp 相同。

相关内容