青铜:
- 首先做一个.sh的小脚本,我们就命名为small.sh
这个脚本的内容为:
//代码片段1
mkdir demo
cd demo
mkdir css js
touch index.html css/style.css js/demo.js
exit
- 然后呢... 在命令行中给这个脚本赋予可执行的权限(用
+x
)
chmod +x small.sh
到这里脚本就做好啦 - cd到其他任一目录执行
sh ~/test/small.sh
查看该目录就可以看到“第一步中的代码片段1”执行完后的样子
白银:
- 接下来在任一目录创建.bashrc文件,内容为export PATH="test的绝对路径:$PATH"。
- cd到其他任一目录执行
small.sh
查看该目录就可以看到“第一步中的代码片段1”执行完后的样子 - small.sh 的后缀 .sh 很无聊,删掉它
mv ~/test/small.sh ~/test/small
现在你只要运行small
就能执行该脚本了。
黄金:
但是。。。我们不想每次创建的文件夹名称都是demo
,那么怎样可以实现自定义呢-----参数
,将第一步的代码demo
修改为$1
:
//代码片段1
mkdir $1
cd $1
mkdir css js
touch index.html css/style.css js/demo.js
exit
- cd到其他任一目录执行
small haha
查看该目录就可以看到“第一步中的代码片段1”执行完后的样子并且目录名为haha
铂金:
- 如果我们再次执行
small haha
就会报错如下:
image.png
这时我们就需要在脚本文件small
中做下判断了,如果目录存在则退出。
if [ -d "$1" ]; then
echo "$1已经存在了"
exit
else
mkdir $1
cd $1
mkdir css js
touch index.html css/style.css js/demo.js
exit
fi
再次重新运行,结果:
image.png
PATH 的作用
每次在 Bash 里面输入一个命令时(比如 ls、cp、demo),Bash 都会去 PATH 列表里面从头到尾依次寻找对应的文件,如果找到了就执行。下图通过命令行展示了PATH的内容
image.png