shell 常見技巧(一)

2021-06-07 16:07:28 字數 1307 閱讀 1507

1.字串連線

通過雙引號 

$value2=$"="

變數連線 [root@localhost sh]# var3=$$

2.空操作 : 

主要是填充保留if語句,防止報錯

if ((1==1))

then:fi

3. source 命令和 . 命令

4. echo 兩個特殊選項

echo the string(s) to standard output.

-n     do not output the trailing newline          不輸出換行符

-e     enable interpretation of backslash escapes  進行轉義 預設不進行轉義

5.dirname 和basename 

basename

從檔名中去掉路徑資訊, 只列印出檔名. 結構 basename $0 可以讓指令碼知道它自己的名字, 也就是, 它被呼叫的名字. 可以用來顯示用法資訊,   比如如果你呼叫指令碼的時候缺少引數, 可以使用如下語句:

echo "usage: `basename $0` arg1 arg2 ... argn"

dirname

從帶路徑的檔名中去掉檔名, 只列印出路徑資訊.

basename 和 dirname 可以操作任意字串. 引數可以不是乙個真正存在的檔案, 甚至可以不是乙個檔名

[root@localhost string]# dirname /****/****.txt

/****

[root@localhost string]# basename /****/****.txt

****.txt

獲取指令碼絕對路徑:

basedirforscriptself=$(cd "$(dirname "$0")"; pwd) 

echo $basedirforscriptself

6.查詢指令碼檔案和二進位制檔案

#查詢文字檔案

find . -type f |xargs file |grep "script"

find . -type f |xargs file |grep "script" |awk -f':' ''|awk -f'/' ''

#查詢二進位制檔案

find . -type f |xargs file |grep "elf"

find . -type f |xargs file |grep "elf"|awk -f':' ''|awk -f'/' ''

Shell 常見的使用技巧

1.vim root bash history 可以檢視之前輸入的命令 2.按上下鍵可以翻看輸入的命令歷史 3.ctrl r 後輸入命令中的某些字母,系統會自動從歷史記錄中進行匹配 4.ctrl a 跳到行首 5.ctrl e 跳到行尾 命令的排列 1.先執行command1,不管command1的...

一些shell技巧

1.批量刪除某些指定檔案 我們都知道用find,很快就可以給出 find name your pattern exec rm f 恩,不過還有更快更簡潔的方法,用find自帶的delete find name your pattern delete 2.列出當前目錄下的所有目錄 不遞迴 你能想到幾種...

Shell 小技巧一則

經常與 shell 為伍的你是不是也會經常碰到下面這些情境 vern 兄攢寫 1 mv somewhere file your folder 2 vi your folder file 要儲存某些檔案到特定目錄,然後開始檢視 編輯 1 cp somewhere foo.c somewhere foo...