1、Linux用戶:
Linux用戶分為普通用戶和管理員,普通用戶的系統操作權限低,用戶的誤操作對系統數據的破壞程度有限,不會對系統造成災難性的破壞。而管理員對系統具有絕對的權限,可以修改和設置系統的任何數據,如果誤操作,及其容易對系統數據造成不可挽回的破壞,比如執行以下命令 rm -rf / 。因此,系統管理員在操作root用戶時需要謹慎,同時應該保管好其密碼,防止被非法盜用。Linux系統默認的管理員賬戶名為 root,其用戶ID號(UID)為0,只要UID為0的用戶都是管理員賬戶。
2、Linux終端(terminal)
終端就是用戶與主機進行交互的一種介質(方式),可以是虛擬的,也可以是實體的。終端大體分為以下四種:
(1)物理終端:直接接入本機的顯示器和鍵盤稱為物理終端,在Linux系統中的文件路徑為/dev/console。
(2)虛擬終端:附加在物理終端之上的以軟件方式虛擬實現的終端,在Linux系統中的文件路徑為/dev/tty#(#表示數字),Linux默認提供6個虛擬終端,可以使用快捷鍵Ctrl+Alt+F(1-6)進行各終端的切換
(3)圖形終端:屬于虛擬終端,但會提供桌面環境。
(4)模擬終端:在圖形界面打開的命令行以及基于ssh協議或Telnet協議等遠程打開的界面,稱為模擬終端,在Linux系統中的文件路徑為/dev/pts/#(#表示數字)。常見的軟件有xshell、putty
3、shell簡介
(1)什么是shell
Shel是用戶與Linux系統溝通的橋梁,提供了用戶與內核進行交互操作的接口,它接收用戶輸入的命令并把它送入內核去執行。同時shell也是一種高級程序語言。
(2)Linux的Shell種類眾多,常見的有:Bourne Shell(/usr/bin/sh或/bin/sh)、Bourne Again Shell(/bin/bash)、C Shell(/usr/bin/csh)、K Shell(/usr/bin/ksh)、Shell for Root(/sbin/sh),等等。不同的Shell語言的語法有所不同,所以不能交換使用。
(3)Linux默認是用的shell是bash,是Linux的標準shell,以sh兼容。
(4)兩個命令:echo $SHELL: 顯示當前使用的shell; cat /etc/shells:顯示當前系統使用的所有shell。
4、命令相關的基本介紹
(1)命令提示符:
顯示提示符格式的命令:echo $PS1 ,格式說明如下:
[\u@\h \W]\$, 說明: \u :用戶名 ; \h:主機名 ; \w:用戶當前的路徑。 符號 $:表示當前登錄用戶為普通用戶; 符號 #:表示當前登錄用戶為管理員 。
修改默認的命令提示符:使用vi編輯/etc/profile文件,在最后加上:export PS1=’[u@h W]$ ‘即可
W 代替 w 就可以實現絕對路徑到相對路徑的轉換
下面簡單說說環境下默認的特殊符號所代表的意義:
d :代表日期,格式為weekday month date,例如:”Mon Aug 1″
H :完整的主機名稱。例如:我的機器名稱為:fc4.linux,則這個名稱就是fc4.linux
h :僅取主機的第一個名字,如上例,則為fc4,.linux則被省略
t :顯示時間為24小時格式,如:HH:MM:SS
T :顯示時間為12小時格式
A :顯示時間為24小時格式:HH:MM
u :當前用戶的賬號名稱
v :BASH的版本信息
w :完整的工作目錄名稱。家目錄會以 ~代替
W :利用basename取得工作目錄名稱,所以只會列出最后一個目錄
(2)命令的分類:
(a)內部命令:安裝系統時shell程序自帶的,實際上是shell程序的一部分,隨系統啟動加載至內存中,這些命令由shell程序識別并在shell程序內部完成運行。使用enable命令可以啟用或禁用內部命令,如enable -n cd :禁用cd命令;enable cd:啟用cd命令
(b)外部命令:是Linux系統中的應用程序部分,其不會隨系統啟動,而是在需要時才會被調用,外部命令的執行過程是由shell控制的。使用which或whereis命令可以查看外部命令的文件存放位置(/bin,/usr/bin,/sbin,/usr/sbin……),如which cd
(c)type命令可以查看某個命令是內部命令還是外部命令;type COMMAND。
(3)命令格式
COMMAND [OPTION…] [ARGUMENTS…]
(a)選項:用于啟用或關閉命令的某個或某些功能;選項分為短選項和長選項;如date命令,短選項 -s與長選項 –set ,其效果是一樣的。
參數:指命令的作用對象,比如文件名、目錄名等。
(b)在查看命令幫助時,會出現[],<>,|等符號,它們的含義如下:
[] 表示是可選的;
<> 表示是可變化的;
x|y|z 表示只能選擇一個;
-abc 表示三個參數(或任何二個)的混合使用
(c)注意事項:
* 多選項,以及多參數和命令之間使用空白字符分隔
* 取消和結束命令執行:Ctrl+c ,Ctrl+d
* 多個命令可以用; 符號分開
* 一個命令可以用\分成多行
5、幾個常用命令
(1)date命令:顯示或設置系統日期和時間
(a)語法:date [選項] [參數]
(b)常用選項
-d<字符串>:顯示字符串所指的日期與時間。字符串前后必須加上雙引號; -s<字符串>:根據字符串來設置日期與時間。字符串前后必須加上雙引號;
-u:顯示GMT;
–help:在線幫助;
–version:顯示版本信息。
(c)參數
<+時間日期格式>:指定顯示的日期時間格式。
時間方面 :
% : 印出 %
%n : 下一行
%t : 跳格
%H : 小時(00-23)
%I : 小時(01-12)
%k : 小時(0-23)
%l : 小時(1-12)
%M : 分鐘(00-59)
%p : 顯示本地 AM 或 PM
%r : 直接顯示時間 (12 小時制,格式為 hh:mm:ss [AP]M)
%s : 從 1970 年 1 月 1 日 00:00:00 UTC 到目前為止的秒數
%S : 秒(00-60)
%T : 直接顯示時間 (24 小時制)
%X : 相當于 %H:%M:%S
%Z : 顯示時區
日期方面 :
%a : 星期幾 (Sun-Sat)
%A : 星期幾 (Sunday-Saturday)
%b : 月份 (Jan-Dec)
%B : 月份 (January-December)
%c : 直接顯示日期與時間
%d : 日 (01-31)
%D : 直接顯示日期 (mm/dd/yy)
%h : 同 %b
%j : 一年中的第幾天 (001-366)
%m : 月份 (01-12)
%U : 一年中的第幾周 (00-53) (以 Sunday 為一周的第一天的情形)
%w : 一周中的第幾天 (0-6)
%W : 一年中的第幾周 (00-53) (以 Monday 為一周的第一天的情形)
%x : 直接顯示日期 (mm/dd/yy)
%y : 年份的最后兩位數字 (00.99)
%Y : 完整年份 (0000-9999)
若是不以加號作為開頭,則表示要設定時間,而時間格式為 MMDDhhmm[[CC]YY][.ss],其中 MM 為月份,DD 為日,hh 為小時, mm 為分鐘,CC 為年份前兩位數字,YY 為年份后兩位數字,ss 為秒數。
(d)示例
顯示當前年-月-日-時-分-秒:
date +%Y-%m-%d-%H-%M-%S
顯示10天前的時間:
date -d "-10 day" +%Y/%m/%d 或者 date +%Y/%m/%d –date="-10 day"
將系統時間設置為2017-07-15 14:15:16
date -s "2017-07-15 14:15:16"(注意日期與時間之間要有空格)
(e)補充命令clock、hwclock顯示硬件時間
clock -s, –hctosys:校正系統時間
clock -w, –systohc:校正硬件時間
(2)cal命令:顯示日歷。
(a)語法:
cal [選項] [參數]
(b)選項:
-l: 顯示單個月(默認選項)
-3: 顯示當前月及其前后各一個月的日歷
-s: 將星期日作為每月的第一天
-m: 將星期一作為每月的第一天
-j: 以一年的第n天顯示
-y: 顯示當前年的日歷
(c)參數
月(1-12):顯示指定的月份 年:顯示指定的年份
(d)示例
(3)nano命令
nano是一個字符終端文本編輯器,可以打開和編輯指定的文件。
(a)語法:
nano [OPTIONS] [[+LINE,COLUMN] FILE]…
(4)screen命令:
Screen是一款由GNU計劃開發的用于命令行終端切換的自由軟件。用戶可以通過該軟件同時連接多個本地或遠程的命令行會話,并在其間自由切換。
(a)安裝:yum install screen
(b)使用
打開新的screen: screen –S [SESSION]
加入某會話:screen –x [SESSION]
退出并關閉screen: exit
剝離當前screen: Ctrl+a,d
顯示所有已經打開的screen: screen -ls
恢復到某screen :screen -r [SESSION]
(5)echo命令
顯示字符,其顯示的字符是標準輸出。
(a)語法
echo [OPTION] [ARGUMENT]
(b)選項
-n:不要在字符的最后自動換行。
-e:激活轉移字符,一般與以下字符連用
\a 發出警告聲;
\b 退格鍵,刪除前一個字符;
\c 最后不加上換行符號;
\n 換行且光標移至行首;
\r 光標移至行首,但不換行;
\t 插入tab; ;
\\ 插入\ 字符;
\f 換行但光標任然停留在原來的位置;
\nnn 插入nnn (八進制)所代表的ASCII 字符;
\xHH 插入HH (十六進制)所代表的ASCII
(c)參數
指定要打印的內容(變量)
(d)示例
顯示紅色閃爍的字符:
echo -e "\e[31;40;5m hello linux \e[0m"
(e)補充
echo 可以與重定向組合使用,如echo hello > /dev/tty3 ; echo my file >> /testdir/testfile(文本文件testfile若不存在系統會自動創建,但是目錄testdir必須事先存在)
(6)history命令
(a)語法
history [OPTION] [ARGUMENT]
(b)選項
-c:清空當前shell歷史命令
-d:刪除指定的命令歷史
-a:將歷史命令緩沖區中命令寫入歷史命令文件(~/.bash_history)中
-r:將歷史命令文件中的命令讀入當前歷史命令緩沖區
-w:將當前歷史命令緩沖區命令寫入歷史命令文件中
(c)用法
調用命令歷史中的命令:
!n:在此執行第n條命令
?。。簣绦猩弦粭l命令
!STRING:執行最近的指定的字符開頭的命令,如!s表示執行最近一次一s開頭的命令
(d)示例
顯示當前shell歷史命令的最近的20條命令: history 20
原創文章,作者:pao,如若轉載,請注明出處:http://www.www58058.com/25924