我想创建一个脚本来修改一些基本的命令行命令,例如ls
或cd
,这些命令最终会调用正常的ls
或cd
命令但是没有创建无限循环。我怎么能这样做?
所以,我想做的就像创建一个cd2.sh文件,如:
#!/bin/bash
echo 'Oh! Your are changing directories'
cd "$@"
然后在.bashrc
(或.bash_profile
for mac)中添加别名:
alias cd = 'cd2.sh'
但这会产生无限循环,而我的电脑对此并不满意。有没有一种简单的方法来实现我的目标?
答案 0 :(得分:3)
您可以使用command
命令或其快捷符号\
。由于cd
是内置函数,因此您也可以使用builtin
命令。它们忽略函数和别名,而是直接在$PATH
和/或内置函数中查找可执行文件。
$ alias ls='echo no ls for you!' $ ls no ls for you! $ command ls [directory listing] $ \ls [directory listing]
答案 1 :(得分:0)
我可以使用以下简单的ls形式。
使用方式:./ cd2.sh -s ./folder
ls $ @
答案 2 :(得分:0)