例如我总是走这条路:
/用户/某物/某些文件夹/某处
但我不想打字
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 相同。