shell指令碼筆記

來源:互聯網
上載者:User

#!/bin/sh  
#第一行告訴系統誰來執行這傻逼玩意兒

$#   #傳送到指令碼的參數個數
$$   #指令碼運行時當前進程的ID號,常用作臨時變數的尾碼,如haison.$$
$!    #後台啟動並執行最後一個進程的ID號

chmod u+x abc.sh #賦予user執行許可權
chmod a+rwx abc.sh #賦予所有人所有許可權
./abc.sh

who -a #顯示使用者的所有資訊
echo -e "\033[31m \033[05m error: no log type $1. \033[0m"; #紅色字閃爍(?)
echo -e "\033[31m error: no log type $1."; #紅色字

tail #只顯示檔案的後十行

檔案類型:
b block  c character  d directory   l link  p pipe  s socket
許可權種類:
r read  w write  x excute
檔案狀態測試:
-d 目錄  -f 常規檔案  -L 符號串連  -s 檔案長度大於0,非空  -r 可讀
-w 可寫  -x 可執行  -u 檔案有suid位設定
樣本: [  -r  haison.c  –a  –w  hai.c  ]
字串測試:
= 兩個字串相等  != 兩個字串不相等  -z 空串  -n 非空串
數值測試:
-eq 相等  -ne 不等  -gt 大於  -lt 小於  -ge 大等  -le 小等

函數裡定義的變數以底線(_)開始

殺進程:
ps -ef | grep xxx  #pgrep xxx
kill -s 9 pid
或者 pgrep xxx | xargs kill -s 9  #注意這裡pgrep要準確,否則會錯殺..
或者 kill -s 9 `pgrep xxx`
或者 pkill -9 xxx #xxx一定要準確啊,否則很危險的= =

花括弧來告訴shell我們要列印的是num變數
echo "this is the ${num}nd"

> 寫入檔案並覆蓋舊檔案
>> 加入檔案尾部

開機掛硬碟:
/etc/fstab下
/dev/sdb    /mnt    ext3   defaults  0 0

select用法
echo "What's ur favourite OS?"
select var in "Linux" "GnuHurd" "Free BSD" "Other";do
break
done
echo "You have selected $var"

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.