我可以在我的.bashrc
(或从它调用的文件)中放置别名,然后它们在我的 shell 中工作。
然后我还可以在命令行中创建其他别名,例如
alias aaa='ls'
Run Code Online (Sandbox Code Playgroud)
它有效。 aaa
做一个ls
操作
但是,如果我将该别名定义放在一个文件中,例如aaa_alias
,使其可执行,然后尝试使用它,则无法识别它。
我调用它./aaa_alias
并且没有错误。但是别名似乎没有在我的 shell 中定义。
为什么不?我究竟做错了什么?我怎么能在一个单独的文件中有少量的别名,而不是在我想要的时候偶尔使用,所以我在去它们的时候调用它。
为了将文件的内容插入到当前会话中,您需要获取该文件,而不是执行它。
. my_file
Run Code Online (Sandbox Code Playgroud)
当您刚刚执行文件时,别名是在子shell 中设置的,因此对您当前的会话没有影响。