如何使用我的自定义 bash 脚本打开特定文件夹
How to open specific folder using my custom bash script
我需要如何编写 Bash 脚本(不是别名)来导航到我的项目文件夹。
例如,当我写的时候(不带任何参数)
$Projects
它应该运行下面的命令
$cd ~/Abdelrahamn/Projects
但是如果我写这样的论点
$Projects Proj1
它应该运行下面的命令
$cd ~/Abdelrahamn/Projects/Proj1
您需要编写一个函数来完成此操作并将其放入您的 .bash_profile 或 .bashrc 中。 Shell 脚本在 subshell 中执行,一旦脚本退出,subshell 退出,让您进入交互式 shell。
Project () {
project_path="/home/user/path/to/projects/"
if [ $# -eq 1]; then
cd "$project_path"
else
cd "$project_path"
fi
}
你的脚本应该是这样的:
cd ~/Abdelrahamn/Projects/
如果 ~/.profile
或 ~/.bashrc
中的函数被接受,这将很简单:
Project() { cd ~/Abdelrahamn/Projects/; }
根据您的需要,散列可能是一个不错的选择。整个脚本似乎有点矫枉过正。在你的 ~/.zshrc.local (或更早的任何脚本中调用它),添加:
hash -d project=~/Abdelrahamn/Projects
然后您可以像通常那样使用 cd
,但要在开头加上 nameddir/hash。例如:
cd ~project
cd ~project/foo
将转换为:
cd ~/Abdelrahamn/Projects
cd ~/Abdelrahamn/Projects/foo
我需要如何编写 Bash 脚本(不是别名)来导航到我的项目文件夹。
例如,当我写的时候(不带任何参数)
$Projects
它应该运行下面的命令
$cd ~/Abdelrahamn/Projects
但是如果我写这样的论点
$Projects Proj1
它应该运行下面的命令
$cd ~/Abdelrahamn/Projects/Proj1
您需要编写一个函数来完成此操作并将其放入您的 .bash_profile 或 .bashrc 中。 Shell 脚本在 subshell 中执行,一旦脚本退出,subshell 退出,让您进入交互式 shell。
Project () {
project_path="/home/user/path/to/projects/"
if [ $# -eq 1]; then
cd "$project_path"
else
cd "$project_path"
fi
}
你的脚本应该是这样的:
cd ~/Abdelrahamn/Projects/
如果 ~/.profile
或 ~/.bashrc
中的函数被接受,这将很简单:
Project() { cd ~/Abdelrahamn/Projects/; }
根据您的需要,散列可能是一个不错的选择。整个脚本似乎有点矫枉过正。在你的 ~/.zshrc.local (或更早的任何脚本中调用它),添加:
hash -d project=~/Abdelrahamn/Projects
然后您可以像通常那样使用 cd
,但要在开头加上 nameddir/hash。例如:
cd ~project
cd ~project/foo
将转换为:
cd ~/Abdelrahamn/Projects
cd ~/Abdelrahamn/Projects/foo