Java程序员为什么要学习Shell呢?
1)需要看懂运维人员编写的Shell程序。
2)偶尔会编写一些简单Shell程序来管理集群、提高开发效率。
entos默认的解析器是bash
步骤:
1、创建shell脚本
cd 到合适的文件夹
touch helloworld.sh
2、编辑shell脚本
vim helloworld.sh
进入编辑模式后,按i进入编辑模式,在脚本中输入
1. #!/bin/bash 2. 3. echo "hello world hahaha"
需要注意的是:shell脚本以#!/bin/bash开头(指定解析器)
按Esc退出输入模式,切换到命令模式;按下 :wq 保存退出(注意是按冒号和wq)
3、使用解析器执行shell脚本
sh helloworld.sh
按下回车后,可以看到输出了我们刚刚输入的helloworld
再试试bash,应该也是一样的效果
bash helloworld.sh
4、直接执行
使用chmod 777给该文件最高权限
chmod 777 helloworld.sh
再查看的时候可以看到,该文件已经被加粗
下面我们执行一下
./helloworld.sh
执行成功
5、反思
为什么使用sh和bash命令不需要权限,而使用./就需要权限呢?
因为sh和bash执行方法本质是解析器帮助我们执行脚本,所以脚本本身不需要执行权限;而./的执行方法本质需要自己执行,所以需要执行权限