文件系統訪問列表
FACL:利用文件擴展保存控制權限
權限應用次序:ower->group->other
ower->facl中user->group—>facl中group->other
setfacl
-m:設定
u:UID:perm 設定屬主
g:GID:perm 設定屬組
eg:setfacl -m u:hadoop:rw 給hadoop用戶設定讀寫權限
-x:取消
u:UID:perm 取消屬主
g:GID:perm 取消屬組
getfacl:
who:顯示當前登錄的用戶有哪些
who -H:顯示頭部
sleep
每隔5秒,就來查看hadoop是否已經登錄,如果登錄,顯示其已經登錄,並退出
whoami:顯示當前登錄的用戶
last:顯示/var/log/wtmp文件,顯示用戶登錄歷史及系統重啓歷史
-n #:顯示最近#次的相關信息
lastb: /var/log/wtmp文件,顯示用戶錯誤的登錄嘗試
lastlog:顯示每一個用戶最近一次的成功登錄的信息
-u USERNAME:顯示特定用戶最近的登錄信息
basename:取一個文件/路徑的基名(文件名本身)
$0:執行腳本時的腳本路徑及名稱
mail:郵件
-s :郵件標題
寫郵件的兩種方法:
一、cat 文件路徑 | mail "" 接收者
eg: cat /etc/fstab | mail -s "How are you?" root
二、mail "" 接收者 < 文件路徑
eg:mail -s "How old are you?" root < /etc/fstab
如果當前主機的主機名不是www.magedu.com,就將其改爲www.magedu.com
[ `houstname` != 'www.magedu.com' ] && houstname www.magedu.com
如果當前主機的主機名是localhost,就將其改爲www.magedu.com
[ `houstname` == 'localhoust' ] && houstname www.magedu.com
如果當前主機的主機名爲空,或者爲(none),或者爲localhost,就將其改爲www.magedu.com
[ -z `hostname` ] || [`hostname` == 'n(none)' -o `houstname` == 'localhoust' ] && hostname www.magedu.com
生成隨機數
RANDOM:0-32768
隨機數生成器
/dev/random:會阻塞用戶進程
/dev/urandom:模擬生成隨機數
寫一個腳本,利用RANDOM生成10個隨機數,並找出其中最大值。
#!/bin/bash
#
declare -i MAX=0
declare -i MIN=0
for I in {1..10}; do
MYRAND=$RANDOM
[ $I -eq 1 ] && MIN=$MYRAND
if [ $I -le 9 ]; then
echo -n "$MYRAND,"
else
echo "$MYRAND"
fi
[ $MYRAND -gt $MAX ] && MAX=$MYRAND
[ $MYRAND -lt $MIN ] && MIN=$MYRAND
done
echo $MAX,$MIN
控制結構:
順序結構
選擇結構
if語句
case語句
case SWITCH in
value1)//SWITCH值爲1
statement1
...
;; //一定以";;"結尾
value2)//SWITCH值爲2
statement2
...
;;
*)//任意值
statement
...
;;
esac
循環結構
寫一個腳本,可以接受選項及參數,而後能獲取每個選項,及參數的信息;
並能根據選項及參數做出特定的操作
比如:adminusers.sh --add tom,jerry
--del tom,blair
-v|--verbose -h|--help
終端類型:
console:控制檯(直接連接硬件設備的顯示界面)
pty:物理終端(VGA顯卡)
tty:虛擬控制檯(VGA)
ttys#:串行終端
pts/#:僞終端