1. vim,vi及ex的關係vim
vim不須要安裝,vi爲ex的「Visual Mode」,Vim是vi的高級版本;bash
2. Unix Shell 快捷鍵spa
Ctrl+a/e將光標定位到 命令的頭/尾操作系統
Ctrl+u/k剪切光標前/後的內容 Ctrl+y 粘貼Ctrl+u/k的內容命令行
3. Unix Shell中的時間提取調試
dt="`date +%F`" //2017-09-27blog
yy="`date +%Y`" //2017input
mm="`date +%m`" //09it
dd="`date +%d`" //27test
hh="`date +%H`" //16
nn="`date +%M`" //10
4. export設置或顯示環境變量
A. 查看:export
B. 設置:export PATH="$PATH:xxx"
5. 關於命令行執行命令文件時必須加./或bash才能執行的緣由說明:
Unix按$PATH變量搜索用戶的當前路徑,而當前路徑是不包括在此變量中的,因此要加"./"來代表。因此可使用命令export path=$PATH:./將當前路徑加入$PATH 中,而在命令行直接輸入文件名便可!
8. 定時執行Crontab
特殊符號說明:*:任什麼時候刻;,:分割; /n:每n個單位執行一次;
例:0 2 * * * / test.sh > output.file 2 >& 1 &
做用:將錯誤輸出2重定向到標準輸出1,而後將標準輸出1存入文件output.file中;
具體使用:打開以下文件並添加上述示例代碼便可:
9. 輸出重定向2>&1 &
bash中,0,1,2分別表明STDIN_FILENO,STDOUT_FILENO,STDERR_FILENO,也即標準輸入,標準輸出和標準錯誤;
對於 2>&1 &,指的是將標準錯誤2重定向到標準輸出1。此時1前面的&就是爲了讓bash將1解釋成標準輸出而不是文件1。至於最後一個&,則是讓bash在後臺運行;
10. 查看磁盤使用狀況的查看:
du (Disk Usage) :逐個文件統計,能夠跨區;
df(Disk Free):直接讀取分區的超級塊信息;
11. 關於UNIX中的"~":
對於root用戶,"~"表明root用戶;
對於通常用戶,"~"表明當前用戶的目錄,如/JoyeZhou
12. 問題:在Windows中建立的文件,爲何在Unix下調用xc -l時,老是少算一行,why?
Windows操做系統中,文件以'\n'做爲結束符.因此最後一行若是沒有\n就會統計丟失.而Unix會自動在文件的結尾加上\n,再加上文件結束符EOF,因此Windows文件在Unix下會存在兼容問題。
13. 關於ksh調用腳本文件執行命令
在bash命令行中調用腳本文件時,須要使用ksh來進行調用,但調用腳本時當前腳本文件必須有可執行權限x;
14. 文件權限管理:
chmod:改變文件或目錄的訪問權限(先設文件夾權限);
用戶組權限:r(read:4) w(write:2) x(execute:1)
*此處共有10位,第一位表示文件類型,其他9位由三個三元組字符rwx組成。第一個三元組表示文件全部者的權限;第二組表示文件用戶組的權限,第三組表示全部其餘用戶的權限;
具體示例:chmod 777 FileName(777表示徹底開放權限);
chown:改變文件或目錄的全部者;
chgrp:更改文件/目錄的用戶組;
15. 利用set -x 與 set +x 進行腳本調試:
如:set -x
echo "Hello World!" => +echo 'Hello World!'
Hello World!
16. <<! 動態輸入內容:
如:Command Block <<!
inputA
inputB
!
Ps:將參數依次傳遞給Command Block;