1. 程式人生 > >linux日常筆記2

linux日常筆記2

linux日常筆記2

DAY01 Linux系統的初次體驗

Linux介紹

Linux系統安裝(CentOS 7.4)

Linux系統的操作界面

1)圖形桌面

2)命令行操作環境

配置網絡



DAY02 玩轉Linux命令行

管理目錄和文件

使用vim編輯器去創建及修改文件

管理用戶和組賬號


一、命令行基礎

1. 命令格式

基本用法

命令字 [選項] … [參數1] [參數2]…

[ ] 表示裏面的內容可有可無

在執行一個命令的時候,命令字必須存在,選項和參數可有可無

命令字 選項 參數之間必須有空格


各組件解析

選項:用來調控執行方式

單個字符一般用-

單詞一般用--

eg:

# ls -l

# ls --help

參數:命令的操作對象,如文檔的存放路徑、用戶名等

2.命令行編輯技巧

tab鍵

功能:命令或者路徑的補齊,如果輸入的內容唯一標識某一個命令或者路徑,tab一次會自動補齊。如果不唯一則tab2次顯示出以輸入內容開頭的所有的命令或者路徑

拍錯

3.快捷鍵

Ctrl + l:清空整個屏幕

Ctrl + c:廢棄當前編輯的命令行

Esc+.:粘貼上一個命令的參數


二、瀏覽目錄和文件

1.ls命令

格式:ls [選項]... [目錄或文件路徑]

常用命令選項

-A:包括名稱以 . 開頭的隱藏文檔

-l:以長格式顯示

-h:必須和-l配合用,提供易讀的容量單位(K、M等)

-d:顯示目錄的屬性

eg:

# ls /root

# ls -l /root

# ls -A /root

# ls -lh /root


補充:

絕對路徑:以/開頭的路徑

相對路徑:不以/開頭的路徑



通配符 * 和 ?

* 匹配任意0-多個字符

?匹配任意單個字符


eg:

# ls /dev/tty*

# ls /dev/tty?

# ls /dev/tty??

2.cat命令

查看文件的內容

# cat /etc/resolv.conf //查看DNS地址

# cat /etc/redhat-release //查看系統的小版本


三、創建目錄和文件

1.mkdir命令

創建目錄

-p 遞歸創建目錄

eg:

[root@localhost /]# cd /opt/

[root@localhost opt]# ls

[root@localhost opt]# mkdir ntd1711

[root@localhost opt]# ls

[root@localhost opt]# mkdir ntd1712

[root@localhost opt]# ls

[root@localhost opt]# mkdir ntd1801/group1/huangsir

[root@localhost opt]# mkdir -p ntd1801/group1/huangsir

[root@localhost opt]# ls

[root@localhost opt]# ls ntd1801/

[root@localhost opt]# ls ntd1801/group1/

[root@localhost opt]# ls -R ntd1801/


問答題

a.請問下面命令創建了幾個目錄?

b.這幾個目錄分別創建在什麽位置?

# mkdir -p ntd1802/ group2 /xushuai 請問


2.touch命令

創建文件

touch 文件名…

eg:

# cd /vod/movie/cartoon

# mkdir -p /vod/movie/cartoon

# cd /vod/movie/cartoon/

# touch Mulan.mp4 NeZhaNaoHai.mp4

# ls -lh *.mp4


四、復制,移動,刪除

1.cp命令

格式:cp [選項]... 原文件… 目標路徑

常用命令選項

-r:遞歸,復制目錄時必須有此選項

-p:保持原文件的權限、修改時間等屬性不變


eg:

[root@localhost ~]# ls -ld /backup

[root@localhost ~]# mkdir /backup

[root@localhost ~]# ls -ld /backup

[root@localhost ~]# cp -r /boot/grub2 /etc/host.conf /backup/

[root@localhost ~]# ls -ld /backup/*

[root@localhost ~]# cp /boot/ /backup/

[root@localhost ~]# ls -ld /backup/*

[root@localhost ~]# cp -r /boot/ /backup/

[root@localhost ~]# ls -ld /backup/*


2.rm刪除

格式:rm [選項]... 文件或目錄…

常用命令選項

-r、-f:遞歸刪除(含目錄)、強制刪除


eg:

[root@localhost ~]# ls -ld /backup/*

[root@localhost ~]# rm /backup/host.conf

[root@localhost ~]# rm -f /backup/grub2/

[root@localhost ~]# rm -rf /backup/grub2/

[root@localhost ~]# rm -rf /backup/boot/

[root@localhost ~]# ls -ld /backup/*


3.mv移動或者重命名

格式:mv [選項]... 原文件… 目標路徑


eg:

[root@localhost ~]# ls -l /vod/movie/cartoon/Mulan.mp4

[root@localhost ~]# mv /vod/movie/cartoon/Mulan.mp4 /backup/

[root@localhost ~]# ls -l /backup/

[root@localhost ~]# mv /backup/Mulan.mp4 /backup/HuaMulan.mp4

[root@localhost ~]# ls -l /backup/


四、Vim文本編輯器

1. 三種模式

命令模式:文件打開後的默認模式,只能查看文件內容不能修改

輸入模式:可以編輯和修改

末行模式:保存退出

2. 切換

命令模式 --> 輸入模式 按i鍵

命令模式 --> 末行模式 按:鍵

輸入模式和末行模式 --> 命令模式 按Esc鍵

備註:輸入模式和末行模式不能直接切換,需要經過命令模式

3. vim filename

如果filename存在則打開這個文件

如果filename不存在則新建這個文件


實驗

1. 在 /root/ 目錄下新建文件 hello.sh

1)錄入內容“Hello World !!!”

2)保存後使用 cat 命令確認文件內容

2. 修改系統文件 /etc/hosts

1)在末尾增加一行內容“127.0.0.1 www.baidu.com”

2)使用 ping 命令測試到 www.baidu.com 的連通性,觀察結果

# ls /root/hello.sh

# vim /root/hello.sh

按i鍵

輸入 Hello World!!!

按esc鍵

按:

wq!

# ls /root/hello.sh

# cat /root/hello.sh


4.命令模式操作

光標行內調整

^ = Home鍵 移動光標到行首

$ = End鍵 移動光標到行尾


光標行間的調整

gg 跳轉到文件的第一行

G 跳轉到文件的最後一行


復制,粘貼,刪除

yy 復制當前行

#yy 復制當前往下#行

p 當前光標下粘貼

delete 刪除當前光標所在的單個字符

dd 刪除(剪切)當前行

#dd 刪除(剪切)當前光標往下到#行


查找

/world 當前光標往下查找world

n 下一個



eg:

[root@ntd1711 ~]# rm -rf /tmp/*

[root@ntd1711 ~]# mkdir /tmp/test01

[root@ntd1711 ~]# cp /etc/mail.rc /tmp/test01/

[root@ntd1711 ~]# ls /tmp/test01/mail.rc

[root@ntd1711 ~]# vim /tmp/test01/mail.rc


5.末行模式操作

:w 保存

:q 退出

:wq 保存並退出

:wq! 強制保存並退出

:w /root/xxx.file 把當前文件另存為/root/xxx.file

:r /root/xxx.file 把/root/xxx.file文件加載到當前文件中


6.查找替換

:s/old/new 替換當前行第一個old為new

:s/old/new/g 替換當前行所有的old為new

:n,m s/old/new/g 替換第n-m行所有的old為new

:% s/old/new/g 替換文件內所有的old為new

u 撤銷


eg:

[root@ntd1711 test01]# ls /etc/passwd /tmp/test01/passwd

[root@ntd1711 test01]# cp /etc/passwd /tmp/test01/

[root@ntd1711 test01]# ls /etc/passwd /tmp/test01/passwd

[root@ntd1711 test01]# vim /tmp/test01/passwd

在末行模式輸入

/root

:s/root/feige

u

:s/root/feige/g

u

:1,10s/root/feige/g

u

:%s/root/feige/g

u

:q!


顯示和關閉行號

:set nu|nonu


五、管理用戶和組

1.用戶管理

a.用戶分類

超級用戶:管理員賬戶root uid為0

系統用戶:系統服務產生 uid範圍 1 ~ 999

普通用戶:管理員自己創建的賬戶,uid範圍 1000 ~ 60000

b.創建用戶

# id 賬戶名 驗證系統是否存在這個賬戶

# useradd 賬戶名 創建賬戶

c.設置密碼

#passwd 賬戶 設置密碼

d.修改賬戶信息

#usermod

-l 新賬戶 舊賬戶 修改登錄名字

e.刪除賬戶

#userdel 賬戶 刪除賬戶

-r 連同家目錄一起刪除

總結:

當默認創建一個普通用戶的時候,會在/home下創建一個同名的文件夾。

這個文件夾就是創建用戶的家目錄


eg:

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# useradd nvshen

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# passwd nvshen

[root@ntd1711 ~]# id miaodt

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# usermod -l miaodt nvshen

[root@ntd1711 ~]# id miaodt

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# usermod -l nvshen miaodt

[root@ntd1711 ~]# id miaodt

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# userdel nvshen


實驗:

1.新建名為 nvshen 的用戶賬號,將密碼設置為 1234567

測試以用戶 nvshen 遠程登錄到本機系統

2.將此用戶的家目錄遷移到 /opt/nvshen 目錄

重新以用戶 nvshen 遠程登錄本機系統,確認當前 pwd 工作目錄位置

3.徹底刪除名為 nvshen 的用戶賬號

檢查其ID信息,查看提示結果。檢查其家目錄是否可用

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# useradd nvshen

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# passwd nvshen

[root@ntd1711 ~]# ssh [email protected]

[nvshen@ntd1711 ~]$ pwd

[nvshen@ntd1711 ~]$ whoami

[nvshen@ntd1711 ~]$ exit

[root@ntd1711 ~]# ls -ld /opt/nvshen

[root@ntd1711 ~]# ls -ld /home/nvshen/

[root@ntd1711 ~]# usermod -d /opt/nvshen nvshen

[root@ntd1711 ~]# ls -ld /opt/nvshen

[root@ntd1711 ~]# mv /home/nvshen/ /opt/

[root@ntd1711 ~]# ls -ld /opt/nvshen

[root@ntd1711 ~]# ssh [email protected]

[nvshen@ntd1711 ~]$ pwd

[nvshen@ntd1711 ~]$ exit

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# ls -ld /opt/nvshen/

[root@ntd1711 ~]# userdel nvshen

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# ls -ld /opt/nvshen/


2.組管理

a.創建組

#groupadd 組名

-g gid 創建組的時候指定gid

b.給組添加刪除成員(用戶)

#gpasswd

-a:添加指定用戶為組成員

-d:從組內刪除指定的成員用戶

c.刪除組

#groupdel


eg:

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# useradd nvshen

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# groupadd -g 600 stugrp

[root@ntd1711 ~]# gpasswd -a nvshen stugrp

[root@ntd1711 ~]# id nvshen

[root@ntd1711 ~]# groupdel stugrp

[root@ntd1711 ~]# id nvshen


linux日常筆記2