zsh 别名在执行时丢弃第一个字符
zsh alias dropping first character at execution
好的,我的别名是 alias pinecalcmanj="scp ~/.local/share/evolution/calendar/system/calendar.ics $pinemanjaro:~/.local/share/evolution/calendar/system/calendar_computer.ics"
。 运行 命令行中的别名,我看到了 cp: cannot create regular file ':~/.local/share/evolution/calendar/system/calendar_computer.ics': No such file or directory
。如果我将别名内容复制并粘贴到命令行中,它运行良好。别名中的第一个字符似乎在执行中被删除了。
不过,这里有一个有趣的问题。我在 's' 之前添加了一个白色的 space 并执行了别名,给出了新的别名 alias pinecalcmanj=" scp ~/.local/share/evolution/calendar/system/calendar.ics $pinemanjaro:~/.local/share/evolution/calendar/system/calendar_computer.ics"
。嘿,很快,它起作用了。伟大的。我用 space 保存了别名。
好吧,下次我去使用别名时它没有用,看到同样的问题,'s' 没有被识别。我删除了白色的 space,保存了 zshrc,然后 运行 别名就成功了。所以,似乎每次我想使用别名时,我都需要打开 zshrc 并删除一个白色的 space 或添加一个才能使其工作。我在这里很困惑。有什么想法吗?
我认为如果将双引号替换为单引号会有效,如下所示:
alias pinecalcmanj='scp ~/.local/share/evolution/calendar/system/calendar.ics $pinemanjaro:~/.local/share/evolution/calendar/system/calendar_computer.ics'
原因是单引号不会插入任何内容,但双引号会。
Bash 手册是这样说的:
好的,我的别名是 alias pinecalcmanj="scp ~/.local/share/evolution/calendar/system/calendar.ics $pinemanjaro:~/.local/share/evolution/calendar/system/calendar_computer.ics"
。 运行 命令行中的别名,我看到了 cp: cannot create regular file ':~/.local/share/evolution/calendar/system/calendar_computer.ics': No such file or directory
。如果我将别名内容复制并粘贴到命令行中,它运行良好。别名中的第一个字符似乎在执行中被删除了。
不过,这里有一个有趣的问题。我在 's' 之前添加了一个白色的 space 并执行了别名,给出了新的别名 alias pinecalcmanj=" scp ~/.local/share/evolution/calendar/system/calendar.ics $pinemanjaro:~/.local/share/evolution/calendar/system/calendar_computer.ics"
。嘿,很快,它起作用了。伟大的。我用 space 保存了别名。
好吧,下次我去使用别名时它没有用,看到同样的问题,'s' 没有被识别。我删除了白色的 space,保存了 zshrc,然后 运行 别名就成功了。所以,似乎每次我想使用别名时,我都需要打开 zshrc 并删除一个白色的 space 或添加一个才能使其工作。我在这里很困惑。有什么想法吗?
我认为如果将双引号替换为单引号会有效,如下所示:
alias pinecalcmanj='scp ~/.local/share/evolution/calendar/system/calendar.ics $pinemanjaro:~/.local/share/evolution/calendar/system/calendar_computer.ics'
原因是单引号不会插入任何内容,但双引号会。 Bash 手册是这样说的: