我正在尝试创建bash脚本。我希望它们在我当前的外壳中运行,例如,当我创建目录时,我想重定向到新目录,而不必键入cd和新目录的路径。
我所有的脚本都保存在主目录下的bin文件夹中。 这是一个名为test.sh的bash脚本的示例:
sale 0: 1
sale 1: 2
sale 2: 3
sale 3: 4
sale 4: 5
在下面这样的别名中创建别名并使用source命令是一种好习惯吗?
#!/bin/bash
mkdir /path/of/the/directory
cd /path/of/the/directory
非常感谢您的帮助!
答案 0 :(得分:2)
那绝对好。例如,我的.bashrc中有一个别名,该别名来自.bashrc:
alias rebash='source ~/.bashrc'
答案 1 :(得分:1)
不,绝对没有理由这样做。
这听起来模糊不清,就像您应该创建一个包含代码的函数,而根本没有别名或外部文件一样。
g () {
mkdir -p /path/of/the/directory
cd /path/of/the/directory
}
将此内容放入您的.bashrc
或类似名称中。也许,如果您希望将其放在单独的文件中,请创建文件$HOME/bin/interactive.bash
,然后从source $HOME/bin/interactive.bash
中创建文件.bashrc
。
答案 2 :(得分:0)
如果您在别名中使用source
,就很好。
但是,作为一般惯例,您应该在~/.bash_aliases
中定义所有别名,并使用~/.bash_profile
在source ~/.bash_aliases
中提供它们的别名,以便一旦启动新的Shell,它将加载所有可用别名。