Linux介紹與基本必知命令
1.系統結構介紹
Linux由來
Linux操作系統是基於UNIX操作系統的,
其內核主要是由C程序編寫。Linux是自由和開放的,任何組織和個人只要遵循GNU通用公共許可證協議都可以自由免費地使用Linux的所有底層源代碼,並可以自由地修改和分發。
2.Linux的目錄結構
Linux和Windows最大的不同之處在於Linux的目錄結構的設計,在Linux中,任何文件,目錄和設備都在根目錄“/”之下。Linux把所有文件和設備都當作文件來管理,這些文件都在根目錄下,同時Linux中的文件名區分大小寫。
3.命令提示符
[root@Vip ~]#
[pyvip@Vip ~]$
格式:[用戶@主機名 當前目錄]#
root是Linux管理員,也稱爲超級用戶
pyvip是Linux普通用戶,在Ubuntu中,root用戶被鎖定,當需要是使用的時候可以使用sudo來提權,詳情請見:https://help.ubuntu.com/community/RootSudo
這裏的Vip是主機名,相當於Windows上的計算機名。
~是當前用戶的家目錄,家目錄就相當於我們window系統盤中的用戶目錄
#是超級用戶的提示符,$是普通用戶的提示符。
命令:pwd 當前目錄 、hostname 主機名、whoami 當前用戶
[root@lanlong ~]# pwd
/root
[root@lanlong ~]# hostname
lanlong
[root@lanlong ~]# whoami
root
4.Linux的用戶
在Linux中root用戶具有超級權限,可以操作任何文件,日常使用中應該避免使用它。這就需要我們在平常使用的過程中使用普通用戶。
在Linux中有三種用戶,超級用戶、系統用戶和普通用戶,超級用戶就是root用戶;系統用戶是系統正常使用時使用的賬戶,如bin、mail等,但是系統用戶不能夠登錄;普通用戶是普通使用者,能夠使用Linux大部分資源,但是一些特定的權限受到控制。
在Linux中可以使用cat /etc/passwd查看當前的用戶
root:x:0:0:root:/root:/bin/bash
#用戶名稱:用戶密碼:用戶標記號:組標記號:相關注釋:主目錄:使用的Shell
#root用戶可以使用 cat /etc/shadow 查看加密後的用戶密碼
5.Linux的用戶管理
5.1.添加用戶
#在Ubuntu則需要執行下面的操作
pyvip@Vip:~$ sudo useradd -m lanlong
#修改用戶 budong 的密碼
pyvip@Vip:~$ sudo passwd lanlong
5. 2.爲普通用戶添加sudo權限
pyvip@Vip:~$ sudo visudo
#在root ALL=(ALL) ALL #這行下面添加如下
budong ALL=(ALL) ALL
visudo 打開文件後,將username ALL=(ALL) ALL加入到文件中。
具體步驟:
1.visudo進入文件。
2.按上下鍵找到 root ALL=(ALL) ALL 這一行內容。 3.按 i 鍵進入插入模式,然後輸入 username ALL=(ALL) ALL 。
4.輸入完成後,按Esc,然後shift+; ,末行出現冒號後輸入wq回車來保存退出。
在完成上面的步驟之後我們就可以使用普通用戶登陸,xshell這裏也是,可以是用普通用戶,不用擔心root權限過大造成關係文件的誤操作。
5. 3.用戶操作
pyvip@Vip:/home$ sudo usermod -l lanlong1 lanlong #更改用戶名
pyvip@Vip:/home$ sudo userdel lanlong1 #刪除用戶
pyvip@Vip:/home$ sudo userdel -r lanlong1 #刪除用戶,以及主目錄和目錄中的所有文件
5. 4.用戶組
Linux中除啦用戶之外還有用戶組的概念,用戶組就是具有相同特徵的用戶的用戶集合。每個用戶都有對應的用戶組。通過對/etc/group文件的操作,實現對用戶組的添加、修改和刪除。有用戶組之後,系統可以方便的對用戶組進行操作,如賦予文件權限等。
Linux中使用groupadd、groupdel和groupmod來實現對用戶組的添加、刪除和修改
6.必知命令
6.1.目錄跳轉cd
語法:cd (選項) (參數)
常見用法:
cd path # path 是路徑
cd . # 當前目錄
cd .. # 回到上一級目錄
cd / # 跳到根目錄
cd ~ # 回到家目錄
cd # 回到家目錄
cd - # 回到上一次目錄
#查看目錄內容的命令
ls 查看當前目錄中的內容
ll 詳細列出當前目錄中的內容
6.2.查看目錄下的文件ls
語法:ls(選項)(參數)
選項:
-a:顯示所有檔案及目錄(ls內定將檔案名或目錄名稱爲“.”的視爲影藏,不會列出)
-C:多列顯示輸出結果。這是默認選項;
-l:與“-C”選項功能相反,所有輸出信息用單列格式輸出,不輸出爲多列;
-F:在每個輸出項後追加文件的類型標識符,具體含義:“*”表示具有可執行權限的普通文件,“/”表示目錄,“@”表示符號鏈接,“|”表示命令管道FIFO,“=”表示sockets套接字。當文件爲普通文件時,不輸出任何標識符;
-b:將文件中的不可輸出的字符以反斜線“”加字符編碼的方式輸出;
-c:與“-lt”選項連用時,按照文件狀態時間排序輸出目錄內容,排序的依據是文件的索引節點中的ctime字段。與“-l”選項連用時,則排序的一句是文件的狀態改變時間;
-d:僅顯示目錄名,而不顯示目錄下的內容列表。顯示符號鏈接文件本身,而不顯示其所指向的目錄列表;
-f:此參數的效果和同時指定“aU”參數相同,並關閉“lst”參數的效果;
-k:以KB(千字節)爲單位顯示文件大小;-r:以文件名反序排列並輸出目錄內容列表;
-s:顯示文件和目錄的大小,以區塊爲單位;
-t:用文件和目錄的更改時間排序;
-L:如果遇到性質爲符號鏈接的文件或目錄,直接列出該鏈接所指向的原始文件或目錄;
-R:遞歸處理,將指定目錄下的所有文件及子目錄一併處理;
常見用法
pyvip@Vip:~$ ls
pyvip@Vip:~$ ll # 在Ubuntu中其實是 ls -alF 的別名
pyvip@Vip:~$ ls -lrt # 最新更改的文件在最下面
6.3.創建/刪除目錄mkdir rmdir
語法:mkdir (選項)(參數) rmdir(選項)(參數)
pyvip@Vip:~$ mkdir test #創建文件夾 test
pyvip@Vip:~$ ls
pyvip@Vip:~$ cd test/ #進入文件夾
pyvip@Vip:~/test$ mkdir a #創建文件夾 a
pyvip@Vip:~/test$ ls
pyvip@Vip:~/test$ mkdir b
pyvip@Vip:~/test$ rmdir b #刪除文件夾
pyvip@Vip:~/test$ ls
pyvip@Vip:~/test$ cd ..
pyvip@Vip:~$ rmdir test
rmdir: 刪除 "test" 失敗: 目錄非空
# test文件夾下有a文件夾,所以不能直接刪除
6.4.創建/刪除文件touch / rm
語法:touch(選項)(參數)
touch命令有兩個功能:一是用於把已存在文件的時間標籤更新爲系統當前的時間(默認方式),它們的數據將原封不動地保留下來;二是用來創建新的空文件
常見用法:
pyvip@Vip:~$ touch test.py
語法:rm (選項)(參數)
rm 刪除文件或目錄
選項
-d:直接把欲刪除的目錄的硬連接數據刪除成0,刪除該目錄
-f:強制刪除文件或目錄
-i:刪除已有文件或目錄之前先詢問用戶
-r或-R:遞歸處理,將指定目錄下的所有文件與子目錄一併處理
常用實例:
pyvip@Vip:~$ rm -rf test # 操作需謹慎,一旦刪除就找不回了
6.5.複製/移動文件cp mv
cp 複製文件或目錄,默認情況下,cp命令不能複製目錄,如果要複製目錄,則必須使用-r選項
pyvip@Vip:~$ cp a.txt test/b.txt
# 複製 a.txt 的內容到 test/b.txt 文件內 mv 對文件/目錄重命名或移動文件
pyvip@Vip:~$ mv a.txt test/
# 移動 a.txt 到test 文件下cat獲取文件內容
pyvip@Vip:~$ cat test.py
# 可以直接在終端把文件內容打印出來
6.6.查看幫助
help 簡單幫助:
command(out) --help 外部命令
help command(build_in) 內部命令
安裝man命令: sudo yum install man
man 命令,查看幫助信息時和less命令 查看文檔一樣
less 命令使用技巧:
1. 直接上下鍵到跳行
2. 下一行: e
3. 上一行: y
4. 下一頁:
5. 空格鍵: 或 f 或 z
6. 上一頁: b 或 w
7. /string :向下搜尋string這個字符串
9. ?string : 向上搜尋string這個字符串
10. n,N :n 繼續下一個搜尋,N進行反向搜尋
11. 幫助信息:h
12. 退出 : q