執行shell腳本的方式有四種
## 1. bash script-name或者sh script-name
1. 這是當腳本文件本身沒有可執行權限(即文件權限屬性x位為-號)時常使用的方法,或者腳本文件開頭沒有指定解釋器時需要使用的方法。推薦使用這種方法。
2. 使用`$ sh script.sh`執行腳本時,當前shell是父進程,生成一個子shell進程,在子shell中執行腳本。腳本執行完畢,退出子shell,回到當前shell。
## 2. path/script-name或者./script-name
指在當前路徑下執行腳本(腳本需要有執行權限),需要將腳本文件的權限改為可執行(即文件權限屬性為x位)。具體方法為:chmod a+x script-name。然后通過執行腳本絕對路徑或者相對路徑就可以執行腳本了。
注意:在生產環境中,運維人員由于忘記為該腳本設置可執行權限,然后直接使用,導致出錯。因此,推薦第一種 bash script-name。
## 3. source script-name或者. script-name
source或者“.”命令的功能是:讀入腳本并執行腳本,即在當前Shell中執行source或“.”加載并執行的相關腳本文件的命令及語句,而不是產生一個子Shell來執行文件中的命令。
## 4. exec
使用`exec command`方式,會用`command`進程替換當前shell進程,并且保持`PID`不變。執行完畢,直接退出,不回到之前的shell環境。
- Linux
- 高級
- 殺毒
- 記一次中毒事件
- clamav查毒軟件
- 處理挖礦病毒
- 定時任務
- kill
- chattr文件保護
- 運行級別
- Linux啟動
- 文件加密
- ssh免密登錄
- .ssh
- 問題
- 腳本
- 阿里云域名解析
- yum源
- 時間同步
- keepalived實現高可用
- dos字符與unix字符
- 大文件上傳
- 基礎
- proc目錄
- 設置宋體
- 基礎命令_01
- 基礎命令_02
- SELinux
- 文件描述符
- 基礎命令_03
- awk
- 系統日志
- date命令
- bc命令
- lsof
- vim快捷鍵
- shell
- 循環控制
- expr
- 執行腳本的方式
- declare
- shell腳本
- 控制啟停腳本
- 數值計算
- centos
- 配置網絡
- 環境
- 灰度環境
- ansible
- 模塊
- 語法
- file模塊
- setup模塊
- ping模塊
- copy模塊
- command模塊
- shell模塊
- service模塊
- cron模塊
- yum模塊
- user 模塊
- group模塊
- 指定用戶
- playbook
- 實例
- ansible安裝
- Jenkins
- shell部署
- 導入已有項目的配置
- 執行shell
- tungsten數據同步
- 防火墻
- netfilter