所以我最近向我的朋友展示了这个wall
命令。现在他一直用它说话,我很后悔向他展示。我想进行别名调用wall
以阻止他使用它并恶作剧他。我alias wall="ls"
现在这样做了。如果用户只输入,它会起作用wall
,但如果我输入,wall Hello world
它会像常规wall
命令一样运行。有没有办法让我让别名捕获用户输入并忽略它?所以当他输入时wall hello world
它仍然会像一样运行ls
?
答案1
函数可以优先于别名和命令。您可以在 .bashrc 中定义接受参数的函数,但忽略它们。
就像这样
wall(){ echo " just another brick in the wall " }
答案2
好的,那么做这些事:
sudo echo "PATH=~/.bin:$PATH" >> /home/[username]/.bashrc
sudo mkdir /home/[username]/.bin/
sudo echo "fortune | cowsay # Or whatever command you want to run" > /home/[username]/.bin/wall
sudo chmod 755 /home/[username]/.bin/wall
这样,无论何时[username]
运行命令,wall
他都会得到输出fortune | cowsay
。虽然不是别名,但已经足够好了。