1、編寫
建立一個myshell.sh文件,使用vim進行編輯。
elf@ubuntu:~/work/example/scrip_test$?vim myshell.sh |
在該文件中,添加:
#!/bin/bash
echo "my first shell !" |
其中#!/bin/bash用來指定使用的shell應用;echo "my first shell !"為腳本中編寫的命令代碼。
2、執(zhí)行
在執(zhí)行腳本時,腳本必須要有執(zhí)行權限,首先給腳本賦予可執(zhí)行權限:
elf@ubuntu:~/work/example/scrip_test$?sudo chmod a+x myshell.sh |
執(zhí)行腳本的方式一般有以下4種:
1)在腳本當前目錄進行執(zhí)行
直接使用./myshell.sh:
2)在絕對路徑下執(zhí)行
使用pwd命令查看當前路徑,并使用絕對路徑執(zhí)行myshell.sh:
3)shell應用程序執(zhí)行
shell腳本也可直接使用shell應用程序進行執(zhí)行。我們前面說過,我們指定的shell應用為/bin/bash,所以,我們使用bash程序直接執(zhí)行myshell.sh,或者/bin/bash myshell.sh:
如果使用shell應用進行執(zhí)行,那么在腳本編寫時,可以不用在第一行指定shell應用程序;此外,使用shell應用進行腳本執(zhí)行時,腳本文件可以不被賦予可執(zhí)行權限。
4)使用source或小數(shù)點(.)執(zhí)行
使用source或 . (.后邊有空格)執(zhí)行,是在當前shell環(huán)境下讀取并執(zhí)行shell腳本,可以不被賦予執(zhí)行權限。
與前幾種執(zhí)行方式不同的是,使用該方式執(zhí)行后,腳本中定義的變量不會釋放。例如,我在腳本中增加一個變量var=235,變量的定義具體細節(jié),可以參考下一節(jié)。
#!/bin/bash
echo "my first shell !" var=235 |
使用其他方式執(zhí)行后,使用echo ${var}命令(關于變量的使用可以參考下一節(jié))將變量值輸出進行查看,如下圖,可以看到?jīng)]有輸出var的值;然后再使用source. 或進行腳本執(zhí)行,再次查看var變量的值,可以看到成功輸出235,該方式執(zhí)行腳本后的變量,沒有釋放,所以我們經(jīng)常使用source來配置shell環(huán)境變量,后邊講開發(fā)板交叉編譯工具設置時會使用到。