今天學了一些初步的命令,能實現一些基礎功能。
chvt : change vitrual terminal 切換虛擬終端
-
使用方法 : chvt # <- 加終端號
-
注意:圖形界面不能隨意切換其他的終端,只有在字符行節目才能進行切換。
lsb_release:查看系統信息
-
使用方法:lsb_release -a
tty:查看終端類型
-
使用方法:tty
-
注意:/dev/console在單用戶模式(init 1)啟用
虛擬終端:附加在物理終端之上的以軟件方式虛擬實現的終端,
-
設備文件路徑:/dev/tty#,CentOS 6默認啟動6個虛擬終端
-
使用方法:Ctrl+Alt+F#: [1,6]
模擬終端:圖形界面打開的命令行以及基于ssh協議或
telnet協議等遠程打開的界面。
-
設備文件:/dev/pts/# [0, ∞)
交互式接口:啟動終端后,在終端設備附加一個交互式應用程序
GUI:Graphic User Interface
X protocol, window manager, desktop
Desktop:
-
GNOME (C, 圖形庫gtk),
-
KDE (C++,圖形庫qt)
-
XFCE (輕量級桌面)
CLI:Command Line Interface
shell程序:
sh (bourn)
csh tcsh ksh (korn) bash (bourn again shell)GPL zsh
-
Shell 是Linux系統的用戶界面,提供了用戶與內核進行交互操作的一種接口。它接收用戶輸入的命令并把它送入內核去執行。
-
shell也被稱為LINUX的命令解釋器(command interpreter)
-
shell是一種高級程序設計語言
GNU Bourne-Again Shell(bash)是GNU計劃中重要的工具軟件之一,目前也是 Linux標準的shell ,與sh兼容。CentOS默認使用
顯示當前使用的shell:
-
#echo ${SHELL}
顯示當前系統使用的所有shell:
-
#cat /etc/shells
命令提示符:prompt
[root@localhost ~]#
顯示提示符格式:
[root@localhost ~]:echo $PS1
prompt:
-
管理員:#
-
普通用戶:$
輸入命令,回車:
提請shell程序找到鍵入命令所對應的可執行程序或代碼
,并由其分析后提交給內核分配資源將其運行起來
在shell中可執行的命令有兩類:
內部命令:由shell自帶的,而且通過某命令形式提供
enable命令可以啟用或禁用內部命令
外部命令:在當前系統的某文件系統路徑下有對應的可執行程序文件;which,whereis,區別當前使用的命令是內部或外部命令:
-
# type COMMAND
hash命令:
搜尋到的外部命令路徑結果緩存至kv(key-value)存儲中
-
hash 顯示hash
-
緩存 hash –r 清除緩存
COMMAND [OPTIONS…] [ARGUMENTS…]
選項:用于啟用或關閉命令的某個或某些功能;
-
短選項:-c, 例如:-l, -h
-
長選項:–word,例如:–all, –human-readable
-
參數:命令的作用對象,比如文件名,用戶名等
注意:
-
1、多選項,以及多參數和命令之間使用空白字符分隔
-
2、取消和結束命令執行:Ctrl+c,Ctrl+d
-
3、多個命令可以用;符號分開
-
4、一個命令可以用\分成多行
date -顯示日期和時間
Linux的兩種時鐘:
系統時鐘:由Linux內核通過CPU的工作頻率進行的;
硬件時鐘:主板
hwclock,clock: 顯示硬件時鐘
-
-s, –hctosys 以硬件時鐘為準,校正系統時鐘
-
-w, –systohc 以系統時鐘為準,校正硬件時鐘
cal -顯示日歷
-
使用方法:cal #<-加年份或月份
-
使用方法:nano filename
screen:
-
打開新的screen: screen –S [SESSION]
-
加入會話:screen –x [SESSION]
-
退出并關閉screen:exit
-
剝離當前screen:Ctrl+a,d
-
顯示所有已經打開的screen:screen -ls
-
恢復某screen:screen -r [SESSION]
echo命令
-
功能:顯示字符
-
語法:echo [-neE][字符串]
-
說明:echo會將輸入的字符串送往標準輸出。輸出的字符串間以空白字符隔開, 并在最后加上換行號
-
echo "$VAR_NAME": 變量會替換,雙引號表弱引用
-
echo '$VAR_NAME': 變量不會替換,強引用
-
$echo –e “Enter the file name: \c” echo 需要使用-e 參數來打印轉義字符.
命令行擴展:$( ) 或 “
把一個命令的輸出打印給另一個命令的參數
$ echo "This system's name is $(hostname ) "
This system's name is server1.example.com
$echo "i am `whoami` "
i am root
括號擴展:{ }
打印重復字符串的簡化形式
$ echo file{1,3,5}
file1 file3 file5
$ rm -f file{1,3,5}
命令補全
內部命令:
外部命令:bash根據PATH環境變量定義的路徑,自左而右在每個路徑搜尋以給定命令名命名的文件,第一次找到的命令即為要執行的命令
用戶給定的字符串只有一條惟一對應的命令,直接補全否則,再次Tab會給出列表
路徑補全
把用戶給出的字符串當做路徑開頭,并在其指定上級目錄下搜索以指定的字符串開頭的文件名
如果惟一:則直接補全,否則:再次Tab給出列表
作業
screen 熟練使用
1 |
#!/bin/bash |
1 |
#!/bin/bash |
原創文章,作者:M20-石俊,如若轉載,請注明出處:http://www.www58058.com/25494