〜/path/path/path/path/path的名称以前缀开头的文件夹,我需要经常访问它们。我正在尝试在.bashrc中创建一个将制作"前缀示例"运行命令" CD〜/PATH/PREFIXEXAMPLE"的快捷方式。
我在功能和别名时遇到了相同的问题:
function prefix(){ "cd ~/path/prefix$1"; }
alias prefix="cd ~/path/prefix$1"
当我键入"前缀4"(确实存在文件夹路径/prefix4)时,我会得到:
bash: cd: path/prefixnoclobber: No such file or directory
我在这台计算机上没有管理特权,所以我无法更改某些内容。
.bashrc已经包含了很多东西,但是唯一相关的东西似乎是"设置Noclobber"。我敢肯定,用字符串" Noclobber"代替参数不是Noclobber Switch功能的一部分,并且评论此开关没有效果。
别名命令中的 $1
被替换为设置脚本的第一个参数恰好是(显然是" noclobber"),而不是对别名/函数的参数。您需要做两件事:
- 摆脱别名。别名不够灵活,无法做您想做的事,但是别名 以相同名称覆盖其他任何东西(因此干扰了更好的解决方案)。
-
使用函数:
prefix() { cd ~/path/prefix"$1"; }