shell技巧分享(四)

這是一個(gè)系列文章,主要分享shell(部分功能僅適用于bash)的使用建議和技巧,每次分享3點(diǎn),希望你能有所收獲。

1 常用快捷鍵

  • Alt+Backspace:刪除光標(biāo)前的一個(gè)單詞
  • Alt+F:移動(dòng)光標(biāo)到下一個(gè)空格處
  • Alt+B:移動(dòng)光標(biāo)到上一個(gè)空格后第一個(gè)字符處
  • Ctrl+R:搜索執(zhí)行過的命令行
  • Ctrl+U:刪除光標(biāo)之前所有字符
  • Ctrl+K:刪除光標(biāo)之后的所有字符
  • Ctrl+A:移動(dòng)光標(biāo)到行首
  • Ctrl+E:移動(dòng)光標(biāo)到行尾

這8個(gè)快捷鍵在命令行操作時(shí)會(huì)經(jīng)常用到,如果你沒有使用過,多用幾次就習(xí)慣了,另外,多記住幾個(gè)快捷鍵沒什么壞處。

2 bash調(diào)試模式

示例腳本:

#!/bin/bash -x

script_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
echo script dir is "<$script_dir>"

運(yùn)行腳本:

$ ./get_cur_dir.sh
+++ dirname ./get_cur_dir.sh
++ cd .
++ pwd
+ script_dir=/media/sf_share/git/bash_practice
+ echo script dir is '</media/sf_share/git/bash_practice>'
script dir is </media/sf_share/git/bash_practice>

通過在腳本頂部添加-x選項(xiàng),運(yùn)行腳本時(shí)會(huì)打印出每一行命令,輸出的+號(hào)個(gè)數(shù)表示命令的嵌套層數(shù),從輸出可以清楚看到每條命令的執(zhí)行情況,方便調(diào)試腳本。如果去掉-x選項(xiàng),運(yùn)行腳本只會(huì)打?。簊cript dir is </media/sf_share/git/bash_practice>

3 獲取腳本所在目錄

示例腳本:

#!/bin/bash

script_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
echo script dir is "<$script_dir>"

運(yùn)行腳本:

$ . ./get_cur_dir.sh
script dir is </media/sf_share/git/bash_practice>
$ source ./get_cur_dir.sh
script dir is </media/sf_share/git/bash_practice>
$ sh ./get_cur_dir.sh
script dir is </media/sf_share/git/bash_practice>

在shell腳本內(nèi)部,經(jīng)常需要去獲取腳本所在目錄。示例中給出的方法,無論使用source、點(diǎn)號(hào)或者sh方式運(yùn)行腳本,都可以正確獲取腳本所在目錄。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容