shell入門第三講
1、寫簡單的shell腳本
1.1、打印hello world
打印hello world我想大家在接觸高級編程語言是最先學會的,當然我們的shell并不屬于編程語言,它只是一種解釋性的腳本語言。我們先來看看第一個腳本語言。
[root@localhost ~]# vim hello.sh
#!/bin/bash
echo "hello world"
所謂shebang其實就是在很多腳本的第一行出現的以"#!"開頭的注釋,他指明了當我們沒有指定解釋器的時候默認的解釋器,一般可能是下面這樣:
bash
#!/bin/bash
因為我們一般都使用bash shell,因此其他的shell類型不常用,因此我們只寫這個就行。
當然,上面的這種寫法可能不太具備適應性,畢竟腳本也有使用不同發行版系統的平臺限制,一般我們會用下面的方式來指定:
#!/usr/bin/env bash
像這種的是我們比較推薦的使用方式。
第二行的echo命令表示打印字串,要打印什么內容就在echo命令后面寫上就可以了。要打印的內容建議使用上雙引號,當然單引號也是可以的,不過兩者在使用上有一些小區別,后面我們會給大家解釋。
1.2、執行shell腳本
執行shell腳本大概有這幾種方法:
1.2.1、直接用bash解釋器執行
[root@localhost ~]# bash hello.sh
hello world
像上面這種hello.sh腳本不帶有x執行權限使用bash命令就可以執行此腳本
1.2.2、使用 ./ 來執行
默認我們編寫的shell腳本是不帶x執行權限的,那么就不能執行,比如:
[root@localhost ~]# ls -l hello.sh
-rw-r--r-- 1 root root 31 Mar 18 09:26 hello.sh
此時執行看看
[root@localhost ~]# ./hello.sh
-bash: ./hello.sh: Permission denied
因為沒有賦予x權限,因此就不能使用 ./ 的方式來執行它。
此時我們添加x權限,來執行
[root@localhost ~]# chmod u+x hello.sh
[root@localhost ~]# ls -l hello.sh
-rwxr--r-- 1 root root 31 Mar 18 09:26 hello.sh
[root@localhost ~]# ./hello.sh
hello world
這樣子就可以執行了。
1.2.3、使用source命令來執行
使用source命令也可以不賦予x權限就可以執行,比如:
[root@localhost ~]# ls -l hello.sh
-rw-r--r-- 1 root root 31 Mar 18 09:40 hello.sh
[root@localhost ~]# source hello.sh
hello world
1.2.4、使用 . ?hello.sh 來執行
[root@localhost ~]# ls -l hello.sh
-rw-r--r-- 1 root root 31 Mar 18 09:40 hello.sh
[root@localhost ~]# . hello.sh
hello world
前兩種方式使用的人比較多。后兩種對我們來說也要學習會
好了,這就是今天分享的執行shell腳本的集中方式,希望大家能夠吸收。
聲明:文章來源于網絡,如有侵權請聯系刪除!