參考:linux命令大全
split命令
$split -l 1000 big_file 字首
$split -b 64m big_file 字首
#a.txtab
c
#b.txt12
3
$cat a.txt >> b.txt
結果:ab
c123
$ paste a.txt b.txt
結果
a 1b 2
c 3
通過-d
引數可以制定分隔符額
$paste -d: a.txt b.txt
結果
a:1b:2
c:3
#a.txt12
4434
$sort a.txt
結果12
3444
引數-n
使用數字排序,-t
制定分隔符,-k
制定排序採用的key值,-r
逆序
$sort -u a.ttx
或
$cat a.txt | sort | uniq
結果12
34
$cat a.txt | sort | uniq -u
結果12
3
以來外部程式`sudo apt-get install imagemagick
examples of imagemagick usage
$convert a.png [-quality 95] b.jpg
$convert a.png -resize 200×100 b.png #處理為200x100的(不精確)
$convert a.png -resize 200×100! b.png #處理為200x100的(精確)
$convert a.png -resize 200 b.png #處理為寬為200的(保持縱橫比)
$convert a.png -resize ×100 b.png #處理為高100的(保持縱橫比)
$convert a.jpg -rotate 90 b.jpg
$convert a.jpg -charcoal 2 b.jpg
$convert a.jpg -implode 1 b.jpg
$for pic in *.png; do convert $pic -rotate 90 rotated-$pic; done
#伺服器登陸指令碼
# 伺服器使用者名稱
arr_server_user=(
[0]='root'
[1]='guest'
)# 伺服器ip位址
arr_server_host=(
[0]='xx.xx.xx.xx'
[1]='xx.xx.xx.xx'
)# 伺服器ssh埠號
arr_server_port=(
[0]='22'
[1]='22'
)# 伺服器ssh密碼,金鑰登陸的值設定為 null
arr_server_password=(
[0]='password'
[1]=null
)# 伺服器說明
arr_server_comment=(
[0]='密碼登陸'
[1]='秘鑰登陸'
)# 金鑰檔案位址. 如果是金鑰登陸的話, 值為金鑰檔案位址. 否則為 null
arr_server_key=(
[0]=null
[1]='/path/***.pem'
)# 統計伺服器台數,方便遍歷輸出
len=$
# 螢幕輸出提示資訊。顯示伺服器序號、主機位址、說明資訊
screen_echo() "
printf "%-30s\n" "$"
done
}# 呼叫函式,讓資訊顯示出來
screen_echo
while true
do # 讓使用者選擇所需要登陸伺服器的所屬序號
read -p '請輸入要登陸的伺服器所屬序號: ' server_num
# 如果輸入為空格或者回車,顯示錯誤資訊,後續**不再執行,重新迴圈。
if [ ! $ ]
then
echo '請輸入序號'
continue
fi# 如果輸入的不是數字,顯示錯誤資訊,後續**不再執行,重新迴圈。
if [[ "$" =~ [^0-9]+ ]]
then
echo '序號是數字'
continue
fi# 如果輸入的以 0 開頭的數字、大於等於伺服器台數、小於 0,顯示錯誤資訊,後續**不再執行,重新迴圈。
if [[ "$" =~ ^0[0-9]+ ]] || [ $ -ge $ ] || [ $ -lt 0 ]
then
echo '請輸入存在的序號'
continue
fi# 跳出迴圈
break
done
# 登陸的函式
# set timeout 設定超時時間。-1 永不超時
# spawn : -noecho 意思為終端中不顯示 spawn .. ssh ... 等資訊,不加此引數會有輸出; -o stricthostkeychecking=no 不提示認證
# $1、$2、$3、$4 代表呼叫函式是所傳輸的第乙個、第二個、第三個、第四個引數值
# *yes/no* 意思為 ssh 後如果返回的資訊當中包含 yes/no,而 *password* 就是代表 ssh 後如果返回的資訊當中包含 password
# send 意思為傳送資訊
# exp_continue 意思為繼續執行下面的匹配
# interact 意思為留在遠端終端上面。如果不寫此語句,自動退出伺服器
auto_login_ssh ()
*password*
}interact
";else
expect -c "
set timeout 10;
spawn -noecho ssh -o stricthostkeychecking=no -i $5 $1@$2;
interact
";fi;
return 0;
}# 呼叫登陸函式並傳值。使用者名稱、位址、埠號、密碼
auto_login_ssh $ $ $ $ $
$ `ps -ef | grep $proc_name | grep -v grep | awk ''` | sh
#!/usr/bin/env bash
#定時檢查指定名稱的程序是否存在,若不存在,重新啟動
proc_name="程式名稱"
log_name="./auto_restart.log"
pid=0
proc_num()
proc_id()'`}
count=0
while (true)
doproc_num
number=$?
if [ $number -eq 0 ]
then
#此處填寫重啟命令
proc_id
count=$[count+1]
echo $count:'restart' >> $log_name
echo $:`date` >> $log_name
sleep 2m
fidone
linux命令 常用shell命令及應用
man command linux下更好用的幫助命令 cheat pip install cheat cheat tar linux下更好用的幫助命令 cheat ubuntu終端視窗中,複製貼上的快捷鍵需要加上 shift 複製 ctrl shift c 貼上 ctrl shift v comma...
linux常用shell命令
常用vi命令 一般模式 游標移動 ctrl f 螢幕向前翻動一頁 ctrl b 螢幕向後翻動一頁 移動到這一行的第乙個字元處 移動到這一行的最後乙個字元處 g移動到這個檔案的最後一行 n游標向下移動n行 一般模式 查詢與替換 word 在游標之後查詢乙個名為word的字串 n1,n2s word1 ...
Linux常用Shell命令
1 使用者資料夾 語法 ls 選項 路徑 功能 顯示指定工作目錄下的內容 a all l 檔案詳細資訊 2 檢視當前工作路徑 語法 pwd 功能 當前工作目錄的絕對路徑 3 切換目錄 語法 cd 路徑 功能 切換到指定路徑 例如 切換到 home資料夾下 cd home 4 清屏 語法 clear ...