【问题标题】:WSL bash, create aliases for each available Windows driveWSL bash,为每个可用的 Windows 驱动器创建别名
【发布时间】:2021-09-15 05:41:06
【问题描述】:

对于我的 WSL 设置,在我的 .bashrc 中,我有以下内容:

[ -d /mnt/c ] && alias llc='cd /mnt/c && ll'
[ -d /mnt/d ] && alias lld='cd /mnt/d && ll'
[ -d /mnt/e ] && alias lle='cd /mnt/e && ll'

这样可以快速跳转到每个 Windows 驱动器,但是否可以使其通用,以便它尝试为它在启动时看到的从 c 到 z 的任何驱动器号创建类似这样的别名?例如类似:

# this is not real code:
for i in [a-z]; do
    [ -d /mnt/$(i) ] && alias ll$(i)='cd /mnt/$(i) && ll'
done

【问题讨论】:

标签: bash alias windows-subsystem-for-linux mount-point


【解决方案1】:

您的伪代码很接近。您只需要遍历 globbed 目录本身,并且如 cmets 中所指出的,使用双引号来允许变量插值:

for d in /mnt/[a-z]
do
  alias "ll$(basename ${d})"="cd $d && ll"
done

在第一轮中,$d=/mnt/a$(basename ${d})a,以此类推。

【讨论】:

    猜你喜欢
    • 2018-03-19
    • 1970-01-01
    • 2012-05-15
    • 2016-12-11
    • 1970-01-01
    • 2012-02-16
    • 1970-01-01
    • 2010-11-08
    • 2019-03-25
    相关资源
    最近更新 更多