比如我們在/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)編輯自己的别名
上面就是當前系統中存在的所有命令别名,現在我們隻要将自己的命令别名加入進去即可。比如如下:
可以看到,我新加了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鍵,就會
将多種補全方式顯示出來,這樣子你就可以選擇适合自己的補全方式了。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!