alias別名、時間、screen、echo等——Linux基本命令(3)
1.alias別名
(1)查看、設置別名
Linux系統提供了一個有用的工具叫alias,可以讓我們將一些需要頻繁使用的但又過於冗長的命令設置一個別名,這樣一來,以後只需輸入一個簡短的別名就可以達到同樣的作用。
alias顯看當前已定義的別名
使用aliasaliname=‘command [-x] [....]‘
值得註意的是,不止別名=命令,還可以別名=命令+選項
例如,我們設置一個編輯網卡的配置文件別名,然後只需要輸入別名,就可以進入了。
(2)刪除別名
unalias aliname可以取消別名定義。
unalias-a取消所有別名
(3)查找命令順序
現在我們使用type查看一下cp
我們發現它在alias中。就是說當我們執行一條命令時,首先去別名中找。
因此應該刷新順序為:alias > 內部命令> hash > PATH > command not find
(4)永久有效方法
如果只是按照上面的修改,退出後就失效了。如果想永久有效,要定義在配置文件中。
如果想僅對當前用戶有效,使用nano修改~/.bashrc中的內容。
~ 表示用戶的家目錄,root用戶的家目錄在/root下。
將命令加入文件中保存即可。
如果想對所有用戶有效,則修改/etc/bashrc 文件。
將命令加入文件中保存即可。
PS:這個修改需要在下次登錄時才生效,如果想立即生效,可以使用source .bashrc強制當前就讀取。
(5)執行命令時不受別名影響
共有三種方式:\command
‘command‘
/path/command 路徑
2.命令格式
(1)短選項
例如-l,-a,
ls命令表示列出當前目錄內容, ls -l表示顯示文件詳細信息,ls -a表示顯示所有文件包括隱藏文件(以.開頭的文件即為隱藏文件)。
那麽,如果我們想要顯示所有包括隱藏文件的詳細信息呢?
我們就可以把兩個短選項結合起來:ls -a -l 或 ls -l -a 或 ls -al 或 ls -la 都可以。
(2)長選項
例如--help。
長選項需要打兩個-。因為有些選項自身由多個字母組成,因此需要輸入兩個-表示長選項。(否則如果只輸入一個-就會被當成-h -e -l -p 來執行了)
3.命令終止
當一個命令正在執行而用戶想終止,則使用終止命令。
ctrl+d 正常終止命令
ctrl+c 強制終止命令
4.命令間隔
多個命令可以用;符號間隔開來,將會依次執行。當前一個命令執行結束,執行後一條命令。
PS:它並不會判斷前一條命令是否執行成功或失敗
如果希望判斷是否執行成功,則需要使用判斷語句。
每一條基本命令執行後都有一個返回碼,該返回碼是用$?表示,執行成功的返回碼是0,例如:
if [ $? -ne 0 ];then
上一命令執行失敗時的操作
else
上一命令執行成功時的操作
fi
例如linux中啟動JBoss判斷是否啟動成功
service IMX_JBossAS start
if [$? -ne 0 ];then
echo "失敗"
else
echo "成功"
fi
5.命令分行
一個命令可以用\分成多行。輸入完\敲一下回車,就可以在第二行繼續打了。
6.時間
(1)查詢時間:
date
+%F 年月日
+%T 時分秒
+%Y 年
+%m 月
+%d 日
+%H 時
+%M 分
+%S 秒
+%w 星期(數字)
+%a 星期(英文)
(2)修改時間
一共有兩種方式:dateMMDDHHmmYYYY[.SS]
date -s‘yyyy-mm-dd hh:mm:ss‘(有些所有版本不一定支持這種修改方式)
(3)硬件時間與軟件時間
hwclock 查示硬件時間(BIOS時間)
hwclock -s 將硬件時間寫入軟件時間(系統時間)
hwclock -w 將軟件時間寫入硬件時間
ps:clock =hwclock
7.時區
centos6與centos7命令有些不同。
centos6:
ln -f /usr/share/zoneinfo/America/New_York /etc/localtime修改成美國時區
ln -f/usr/share/zoneinfo/Asia/Shanghai /etc/localtime修改成中國時區
Centos7
timedatectl 查看當前時區
timedatectllist-timezone 查看所有的時區
timedatectlset-timezone America/New_York 修改成美國時區
timedatectl set-timezoneAsia/Shanghai修改成中國時區
8.日歷
cal顯示當月日歷
cal yyyy顯示指定年的日歷
cal -y 顯示當年的日歷
cal -3 顯示上個月當月下個月的日歷(我思考過如果是cal-2到底會顯示上月本月日歷還是上月下月日歷,結果打的時候並沒有這個命令—_—!)
cal -1 同cal 顯示當月日歷
cal mm yyyy 顯示指定年,月的日歷
9.關機與重啟
halt & poweroff關機(centos7不能使用halt,只能使用poweroff)
reboot 重啟
reboot -f 強制重啟(比較暴力,不建議使用)
reboot -p切斷電源
shutdown
shutdown -r 重啟
shutdown -h 關機
shutdown +0 直接關機
shutdown +xx xx分鐘後關機
shutdown hh:mm 指定時間關機
shutdown -c取消關機(需要在另一個終端執行)
10.screen命令
GNU Screen是一款由GNU計劃開發的用於命令行終端切換的自由軟件。用戶可以通過該軟件同時連接多個本地或遠程的命令行會話,並在其間自由切換。
只要Screen本身沒有終止,在其內部運行的會話都可以恢復。這一點對於遠程登錄的用戶特別有用——即使網絡連接中斷,用戶也不會失去對已經打開的命令行會話的控制。只要再次登錄到主機上執行screen -r就可以恢復會話的運行。同樣在暫時離開的時候,也可以執行分離命令detach,在保證裏面的程序正常運行的情況下讓Screen掛起(切換到後臺)。這一點和圖形界面下的VNC很相似。
使用前需要先手動安裝,在光盤下screen文件,點擊安裝。
screen 進入screen 名字以當前終端名.主機名前綴
screen -Sscreenname 指定screen作業的名稱
screen -ls 或 --list查看當前所有的screen
screen -rscreenname 進入一個screen。
ctrl+d 或 exit退出當前screen(會話)。
11.echo
echo本身是輸入什麽就輸出什麽,下面有一些擴展功能:
-n 不換行
-E(默認)不啟用解釋功能\
-e 啟用解釋功能\
\a 報警
\b 退格
\c 不換行
\n 換行,從行首輸入
\r 移動行首但不換行
\t 輸入tab
\\ 輸入一個\
(PS:記得要打引號)
12.其他命令用法
(1)$的用法
$變量名 引用變量的值
$()或` `(反引號,在鍵盤上~的下面) 引用命令執行的結果
$[]運算
${變量名} 或"$變量名"當變量名的起止不分明時,用來劃定變量名的範圍,同時引用變量。
(2){}的用法
{a..z} 表示引用指定範圍的字母
{1..9999}表示引用指定範圍的數字
{1,3,5} 表示分別引用每一個字符
(3)TAB的用法
TAB用來補齊
\2TAB 把根下的所有文件列出
~2TAB 家目錄下的所有文件列出
.2TAB 當前目錄下的所有文件列出,包含隱藏文件
*2TAB 當前目錄下的所有文件列出,不包含隱藏文件
$2TAB 顯示當前所有的環境變量。
本文出自 “Ty_endless” 博客,請務必保留此出處http://tyendless.blog.51cto.com/12435756/1951519
alias別名、時間、screen、echo等——Linux基本命令(3)