Bash 为';创建别名;cd&x27;放入包含空格的文件夹中
我希望能够访问一些经常使用的目录,无论我在目录路径的哪里。我知道别名可以帮助解决这个问题,所以我在.bashrc中添加了一些别名。以下是一些例子:Bash 为';创建别名;cd&x27;放入包含空格的文件夹中,bash,alias,Bash,Alias,我希望能够访问一些经常使用的目录,无论我在目录路径的哪里。我知道别名可以帮助解决这个问题,所以我在.bashrc中添加了一些别名。以下是一些例子: alias 'Programming'="cd /mnt/e/Programming/" alias 'InternetExplorer' = "cd /mnt/c/Internet Explorer/" 第一个别名有效,但第二个别名无效 以下是我尝试过的一些事情: alias 'InternetExplorer'="cd '/mnt/c/Inte
alias 'Programming'="cd /mnt/e/Programming/"
alias 'InternetExplorer' = "cd /mnt/c/Internet Explorer/"
第一个别名有效,但第二个别名无效
以下是我尝试过的一些事情:
alias 'InternetExplorer'="cd '/mnt/c/Internet Explorer/'"
alias 'InternetExplorer'="cd "/mnt/c/Internet Explorer/""
alias 'InternetExplorer'="cd /mnt/c/'Internet Explorer'/"
alias 'InternetExplorer'="cd /mnt/c/"Internet Explorer"/"
alias 'InternetExplorer'="cd /mnt/c/Internet\ Explorer/"
这些解决方案中的一些确实可以在命令行中使用,但我猜别名只是将引号下的所有内容都读取为字符串。此外,我还可以编写一个名为“Internet Explorer”的函数,但从概念上讲,我觉得alias应该是解决方案。谢谢你的帮助
alias InternetExplorer="cd \"/mnt/c/Internet Explorer\""
在cygwin bash上,我会使用
alias InternetExplorer="cd \"$(cygpath -m '*pasted dir from File Manager*'\""
在cygwin bash上,我会使用
alias InternetExplorer="cd \"$(cygpath -m '*pasted dir from File Manager*'\""
如有疑问,请改用函数:
InternetExplorer() { cd "/mnt/c/Internet Explorer"; }
如有疑问,请改用函数:
InternetExplorer() { cd "/mnt/c/Internet Explorer"; }
您能告诉我们您使用的Bash的操作系统和版本吗?
alias foo=“cd foo\bar”
适用于我的macos的Bash。我目前正在Microsoft Windows的Linux子系统上运行Bash shell。我的Linux操作系统是Ubuntu,版本是18.04.2,我的bash是4.4.20(1)。i、 e.发布:LTS。DISTRIB_ID=Ubuntu DISTRIB_RELEASE=18.04 DISTRIB_CODENAME=bionic DISTRIB_DESCRIPTION=“Ubuntu18.04.2 LTS”。
还有:GNU bash,版本4.4.20(1)-RELEASE(x86_64-pc-linux-GNU)
“其中一些解决方案在命令行上工作”很好。那么问题出在哪里呢?如果我在命令行上键入,例如,cd/mnt/c/Internet\Explorer/
,它会工作,但别名中的同一字符串会给出一个cd:参数太多错误。您能告诉我们您使用的Bash的操作系统和版本吗?alias foo=“cd foo\bar”
适用于我的macos的bash。我目前正在Microsoft Windows的Linux子系统上运行bash shell。我的Linux操作系统是Ubuntu,版本是18.04.2,我的bash是4.4.20(1)。i、 e.发布:LTS。DISTRIB_ID=Ubuntu DISTRIB_RELEASE=18.04 DISTRIB_CODENAME=bionic DISTRIB_DESCRIPTION=“Ubuntu18.04.2 LTS”。
还有:GNU bash,版本4.4.20(1)-RELEASE(x86_64-pc-linux-GNU)
“其中一些解决方案在命令行上工作”很好。那么问题出在哪里呢?如果我在命令行上键入,例如,cd/mnt/c/Internet\Explorer/
,它会工作,但别名中的同一字符串会给出一个cd:参数太多错误。为什么要使用别名呢InternetExplorer(){cd”/mnt/c/InternetExplorer”;}
--无需逃逸,您也不需要手动运行cd
命令。奥雷利有一本很棒的书,“学习bashshell”,这非常详细地解释了所有不同的实现,以获得相同的结果,但在不同的上下文中有优缺点。我会把你的问题作为这个问题的答案,从概念上讲,我把一个很长很常用的链接简化成一个很容易记住的单词,因此,别名。如果可以仅为链接名别名,然后键入cd,那么我更愿意这样做@\理查德·杰索普。谢谢,这就解决了问题。在不久的将来,有时需要阅读bash脚本…查看CDPATH。为什么要使用别名InternetExplorer(){cd”/mnt/c/InternetExplorer”;}
--无需逃逸,您也不需要手动运行cd
命令。奥雷利有一本很棒的书,“学习bashshell”,这非常详细地解释了所有不同的实现,以获得相同的结果,但在不同的上下文中有优缺点。我会把你的问题作为这个问题的答案,从概念上讲,我把一个很长很常用的链接简化成一个很容易记住的单词,因此,别名。如果可以仅为链接名别名,然后键入cd,那么我更愿意这样做@\理查德·杰索普。谢谢,这就解决了问题。在不久的将来,有时需要阅读bash脚本…查看CDPATH。