Linux基礎介紹

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)示例

blob.png blob.png

(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)示例

blob.png

顯示紅色閃爍的字符:

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

(0)
paopao
上一篇 2016-07-26
下一篇 2016-07-26

相關推薦

  • 磁盤管理(1)

    1、磁盤結構(機械硬盤) (1)磁盤構成: 磁臂(機械手臂):連接并固定磁頭 馬達(電機):可以轉動盤片,讓磁臂上的磁頭可以在盤片上讀寫數據 扇區:最小的物理存儲單位,每個扇區為512bytes 磁頭:可以讀寫數據 盤片:主要記錄數據 柱面:將扇區組成一個圓就是柱面,柱面是分區的最小單位 (2)磁盤接口 并口:IDE  SCSI&nbsp…

    Linux干貨 2016-08-30
  • Linux基礎知識之用戶和組管理

    系統環境:    該博文以CentOS6.8_x86_64和CentOS7.2_x86_64系統為基礎,Xshell5遠程登錄CentOS6.8和CentOS7.2系統,分別以root身份和sjsir用戶身份登錄系統。 學習的重要問題: 一、為什么要學習用戶和組?    首先Linux區別于其他的系統的最重要的特性就是…

    Linux干貨 2016-08-02
  • 【N25第四周作業】grep

    文本處理工具: Linux上文本處理三劍客: grep, egrep, fgrep:文本過濾工具(模式:pattern)工具; grep:基本正則表達式,-E,-F egrep:擴展正則表達式, -G,-F grep:不支持正則表達式, sed:stream editor, 流編輯器;文本編輯工具; awk:…

    Linux干貨 2016-12-18
  • shell腳本編程入門

    什么是shell腳本,其實,shell腳本就是利用shell的功能所寫的一個程序,這個程序是使用純文本文件,將一些shell的語法與命令(包含外部命令)寫在里面,搭配正則表達式、管道命令與數據流重定向等功能等這些命令的組合起來,以達到我們所想要的目的。 程序編程風格有兩種: 過程式:以指令為中心,數據服務于指令。 對象式:以數據為中心,指令服務于數據。 過程…

    Linux干貨 2016-08-18
  • CentOS上配置https服務

    在CentOS6.9(http2.2)配置https   創建前準備:       安裝opensssl包  和 http2.2 1、在主機(192.168.109.100)創建私有CA   (1)獲取私鑰       …

    2017-06-04
  • keepalive實驗

    實驗環境centos 7 server x2 做keepalived主備 地址分別是192.168.0.200 192.168.0.201 Centos 7 server x2 做real server 采用DR模型   yum -y install ntp#安裝ntp client ntpdate 47.95.253.33#時間同步到自己的ntp…

    2017-12-11
欧美性久久久久