腳本執行方式
比如我們在/root/下編寫了一個腳本,名字為hello.sh。那麼怎麼調用執行它呢?有兩種辦法:
(1)直接通過bash,如下:
bash hello.sh
注:採用bash執行腳本,不需要賦予執行權限。但是這不符合習慣,一般不推薦使用。
(2)先賦予權限,然後直接調用:
chmod 755 hello.sh
/root/hello.sh
注:上面的第一句就是為腳本賦予權限,第二句就是執行命令。一般推薦這種執行方式。
別名
在shell中有時候命令很長,也有時候我們想用新的命令覆蓋原來的命令,這個時候就會用到命令別名。下面就係統的講一講
這個關於別名的一些知識。
(1)查看系統中存在的別名
很簡單,一個命令搞定: alias
例如我的系統中的命令別名都有如下一些:
比如ll是命令“ls -l --color=auto”的別名
(2)編輯自己的別名
也很簡單,語法就是:
alias 命令別名 = ‘原命令名’
注意:是單引號。而且一般命令別名與原來命令名不一樣。但是如果你想覆蓋原來的命令,就可以命令成一樣的。
比如,我想新增加一個命令別名,讓輸入命令vi的時候,實際上執行的是vim命令。就可以如下操作:
通過上面,在用alias查看系統中存在的命令別名的時候,多了vi。以後我們再調用命令vi,實際執行就是vim命令。
但是,請注意,使用alias生成的別名只是臨時有效的,即系統退出後再進入就無效。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
那麼怎麼生成永久的別名呢?
其實也很簡單,比如我們現在的位置在/root/,那麼只需要編輯文件/root/.bashrc即可。
首先我們來看一下這個文件,利用vim /root/.bash.rc命令即可,如下截圖:
上面就是當前系統中存在的所有命令別名,現在我們只要將自己的命令別名加入進去即可。比如如下:
可以看到,我新加了vi=’vim’這個命令別名。
然後再執行source /root/.bashrc 命令即可立即生成,如果你不想立即生效,可以重啟後生效。總之這種
添加別名的方式是永久的。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
(3)刪除別名
刪除別名的也很簡單,如下:
unalias 命令別名
注意:這種刪除方式也是臨時有效的,即當前系統中這個別名失效了。如果重啟後,這個別名還是有效的。原因就是
/root/.bashrc中的別名沒有真正刪除的(如果你在這個文件中編輯了這個別名)。你可以運行alias看一下,發現
別名已經被刪除,但是運行vim /root/.bashrc發現.bashrc中的別名還存在。因此只有刪除了.bashrc中的別名,
才真正刪除了這個別名(當然如果你沒有在.bashrc中編輯這個別名就無所謂了)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
(4)命令生效的順序
在命令覆蓋的時候(即別名和原來的命令名相同),例如我們上例中vi=’vim’就覆蓋掉了系統原來的命令vi,你肯定有疑問
為什麼不會再去調用原來的命令了呢?明明都是一樣的名字啊。其實這是Linux中規定的命令生效順序。下面介紹Linux中的
命令有效的順序。
先後順序如下:
第一順位執行用絕對路徑或相對路徑執行的命令
第二順位執行別名
第三順位執行Bash內部的命令
第四順位執行按照$PATH環境變量定義的目錄查找順序找到的第一個命令
我們發現別名的執行級別還是挺高的哈。好了,關於別名的知識就講到這裡。
快捷鍵
我們記住下面的常用快捷鍵即可,沒有什麼好說的。如下:
ctrl+c 強制終止當前命令
ctrl+l 清屏
ctrl+a 光標移動到命令行首
ctrl+e 光標移動到命令行尾
ctrl+u 從光標所在位置一直刪除到行首
ctrl+z 把命令放入後臺
ctrl+r 在歷史命令中搜索
歷史命令
history [選項] [歷史命令保存文件]
選項:
-c 清空歷史命令
-w 把緩存中的歷史命令寫入歷史命令保存文件”~/.bash_history”
如果你在命令行只輸入命令history,就是查看當前的所有歷史命令(包括你之前登錄的和當前登錄的)
如果你在命令行只輸入命令history -c ,則會刪除當前登錄的所有歷史命令。
如果你輸入命令 history -w ,就會把當前的歷史命令寫入~/.bash_history文件中。
注意:.bash_history這個文件只會保存之前登錄的歷史命令,當前登錄只有退出後才會將歷史命令
寫入這個文件。因此使用選項 -w可以立即寫入。
自動補全
shell中自動補全只要你按下Tab鍵即可。如果按下去沒有自動補全,說明有多種補全方式,你再按一下Tab鍵,就會
將多種補全方式顯示出來,這樣子你就可以選擇適合自己的補全方式了。