1. 程式人生 > >bash 腳本編程基礎及配置文件

bash 腳本編程基礎及配置文件

pytho swd 解釋執行 creat user 根據 pam 編譯 cat

Shell腳本編程:
編程語言的分類:根據運行方式
編譯運行:源代碼—>編譯器(編譯)-- > 程序文件

C語言: 
            解釋運行:源代碼—>運行時啟動解釋器,由解釋器邊解釋邊運行; 

根據器編程過程中功能的實現是調用庫函數調用外部的程序文件;

shell腳本編程:
利用系統上的命令及編程組件進行編程;

完整編程:
利用庫或飆車組件進行編程;

編程模型:過程式編程語言,面向對象的編程語言;

程序=指令+數據

過程式:以指令為中心來組織代碼,數據是服務於代碼;
順序執行,現在執行,循環執行

對象式:以數據為中心來組織代碼,圍繞數據來組織於代碼;
類 實例化對象

shell腳本編程:過程式編程,解釋運行,依賴於外部程序文件運行;
如何寫 shell腳本:
腳本文件的第一行,頂格:給出 shebang,解釋器路徑,用於指明解釋執行
當前腳本的解釋器程序文件

常見的解釋器:
#!/bin/bash
#!/usr/bin/python
#!/usr/bin/perl


    第一個腳本: 

~]# cat myfirst.sh

#!/bin/bash useradd user3 echo "user3" | passwd --stdin user3

mktemp -d /tmp/test.XXXX

運行結果:
~]# bash myfirst.sh

uid=1019(user3) gid=1019(user3) 組=1019(user3)
更改用戶 user3 的密碼 。
passwd:所有的身份驗證令牌已經成功更新。
/tmp/test.woDX

腳本:  

export JAVA_HOME=/usr ~]# nano /etc/profile.d/java.sh

重讀配置變量文件
~]# . /etc/profile.d/java.sh

~]# export declare -x JAVA_HOME="/usr"

第二個腳本

~]# cat test.sh
#!/bin/bash
echo "show some under /etc" ls -d /etc/[pP] echo echo "Traslate lower to upper" ls -d /var/

| tr ‘a-z‘ ‘A-Z‘ echo echo "create a temp file" mktemp /tmp/myfile.XXXX

~]# bash test.sh
show some under /etc
/etc/pam.d
/etc/pnm2ppa.conf
/etc/postfix
/etc/printcap
/etc/protocols
/etc/passwd

create a temp file /tmp/myfile.xF5M

bash 腳本編程基礎及配置文件