標籤:linux shell 基礎
在學習Linux和OpenStack過程中,感覺不管是大規模部署部署還是營運,Shell指令碼都已經是標配,所以學好指令碼很有必要。
以下僅為Linux Shell的一些基礎筆記,這裡作為筆記記下。
===============linux shell簡介======================
1、命令補全:連續按兩次Tab
檔案或者檔案夾補全:一次Tab
命令協助:--help
2、chmod u=rwx,g+w,o+r filename
chown root.root filename 【-R】遞迴
擁有S許可權後,該使用者擁有該檔案的root許可權
t許可權針對檔案夾,該檔案夾下的檔案均會被賦予root許可權
chmod 744 filename
umask預設值為022,也就是檔案和目錄的預設許可權是644和755
ln -s filename1 filename2 filename1是源,filename2是捷徑
3、shell指令碼的前兩行
#!/bin/bash #調用bash
# #注釋,沒有意義
運行shell指令碼
chmod u+x shell.sh #賦予運行許可權
./shell.sh #運行指令碼
alias ls=‘ls -l‘ #別名
ls `cat filename` -al #命令替換
nohup command & #幕後處理
ls | sort 將ls的輸出變為sort的輸入
sort <filename filename為輸出來源
sort <filename>filename1 將filename輸出輸入到filename1
此時filename為源,filename1為目的
“” ‘’可以識別空格和特殊字元
; 一行可以運行多條命令
& 表示後台運行
======================= 變數和運算子==================
通過export來設定環境變數,env來查看,全域有效
echo $ORACLE_SID 顯示環境變數的值
unset $ORACLE_SID 清除該環境變數的值
======================= shell的輸出和輸入==================
echo tee | grep < > << >> 0標準輸入(預設鍵盤) 1標準輸出(預設螢幕) 2錯誤輸入(預設螢幕)
======================= 控制流程結構==================
if 如果條件一為真
then 則執行命令一
elif 如果條件一不為真
then 則執行命令二
else 如果以上皆不匹配,執行命令三
fi 結束
本文出自 “天魂永恒” 部落格,請務必保留此出處http://tianhunyongheng.blog.51cto.com/1446947/1668688
Linux Shell學習之基礎篇