Linux基礎命令學習【mount掛載及注意事項,cp 拷貝,mv移動,alias別名定義,】

dndbd發表於2020-11-12

一、 命令列的基礎

什麼是命令

用來實現某一類功能的指令或程式

在Linux中指定大多數命令,都要找到相應的程式
命令的執行依賴於直譯器(Linux預設的直譯器/bin/bash)

使用者----->直譯器----->核心------>硬體

  • 命令列的一般格式

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

二、 mount掛載,讓目錄成為裝置的訪問點

Windows訪問光碟內容:
光碟檔案---->光碟機裝置---->

Linux系統訪問光碟內容

光碟檔案---->光碟機裝置---->訪問點(目錄)

1.將光碟的映象檔案,放入到虛擬的光碟機裝置

2.檢視Linux中光碟機裝置
[root@nb ~]# ls /dev/sr0 #實際光碟機裝置的名稱
/dev/sr0
[root@nb ~]# ls /dev/cdrom #光碟機裝置的快捷方式
/dev/cdrom
[root@nb ~]# ls -l /dev/cdrom
lrwxrwxrwx. 1 root root 3 7月 3 09:00 /dev/cdrom -> sr0

3.建立目錄作為訪問點(掛載點)
[root@nb ~]# mkdir /dvd
[root@nb ~]# ls /dvd/
格式:mount 裝置路徑 掛載點目錄

root@nb ~]# mount /dev/cdrom /dvd/
mount: /dev/sr0 防寫,將以只讀方式掛載
[root@nb ~]# ls /dvd/
[root@nb ~]# ls /dvd/Packages/ #軟體包所在的目錄
4.解除安裝
[root@nb ~]# umount /dvd/
[root@nb ~]# ls /dvd/

  • 掛載與解除安裝注意事項

1.解除安裝時當前路徑不要是掛載點目錄
[root@nb dvd]# umount /dvd/
umount: /dvd:目標忙。
(有些情況下通過 lsof(8) 或 fuser(1) 可以
找到有關使用該裝置的程式的有用資訊)
2.掛載時最好選擇自己建立的目錄,不要使用根目錄下,已存在的目錄
3.掛載允許掛載到多個掛載點(訪問點)
4.不允許一個掛載點有多個裝置

三、 目錄與檔案的管理

cd — Change Directory

用途:切換工作目錄
格式:cd [目標資料夾位置]
… :上一級目錄
~ :使用者家目錄
. :當前目錄

/root:管理員root使用者的家目錄
/home: 存放所有普通使用者家目錄的地方
[root@nb /]# useradd lisi #建立lisi使用者
[root@nb /]# ls /home/

[root@nb /]# useradd tom
[root@nb /]# ls /home/
[root@nb /]# cd ~lisi #去往lisi使用者的家目錄
[root@nb lisi]# pwd
[root@nb lisi]# cd ~tom #去往tom使用者的家目錄
[root@nb tom]# pwd
[root@nb tom]# cd ~root
[root@nb ~]# pwd

ls — List

– 格式:ls [選項]… [目錄或檔名]

常用命令選項
– -l:以長格式顯示,顯示詳細資訊
– -A:顯示所有內容包含隱藏資料
– -d:顯示目錄本身(而不是內容)的屬性
– -h:提供易讀的容量單位(K、M等)
– -R:遞迴顯示內容
[root@nb ~]# ls -lh /boot #顯示目錄內容的詳細屬性,加上易讀的單位
[root@nb ~]# ls -lh /root #顯示目錄內容的詳細屬性,加上易讀的單位

[root@nb ~]# ls -l /etc/passwd #顯示檔案的詳細屬性
[root@nb ~]# ls -lh /etc/passwd #顯示檔案的詳細屬性,加上易讀的單位

[root@nb ~]# ls -ld /boot/ #顯示目錄本身的詳細屬性
[root@nb ~]# ls -ld /root/ #顯示目錄本身的詳細屬性

[root@nb ~]# ls -A /root #顯示所有內容,包括隱藏資料
[root@nb ~]# touch /opt/.nb.txt
[root@nb ~]# ls /opt/
haxi.txt nsd02 nsd03 rh
[root@nb ~]# ls -A /opt/

[root@nb ~]# ls -R /opt/ #遞迴顯示目錄下內容
[root@nb ~]# ls -R /boot/
[root@nb ~]# ls -R /

常見的統配符號

針對不確定的文件名稱,以特殊字元表示
:任意多個任意字元
?:單個字元
[root@nb ~]# ls /boot/vm

[root@nb ~]# ls /root/a*
[root@nb ~]# ls /dev/tty*
[root@nb ~]# ls /etc/tab
[root@nb ~]# ls /etc/
.conf

[root@nb ~]# ls /etc/ftab
[root@nb ~]# ls /etc/r
.conf

[root@nb ~]# ls /etc/??tab
[root@nb ~]# ls /dev/tty??

[a-z]:多個字元或連續範圍中的一個,若無則忽略 {a,min,xy}:多組不同的字串,全匹配

[root@nb ~]# ls /dev/tty[1-6]
[root@nb ~]# ls /dev/tty[3-8]

[root@nb ~]# ls /dev/tty{1,3,7,18,27}
[root@nb ~]# ls /dev/tty{30,33}

別名的定義

【簡化複雜的命令】

• 檢視已設定的別名
alias [別名名稱]

• 定義新的別名
alias 別名名稱= ‘實際執行的命令列’

• 取消已設定的別名
unalias [別名名稱]

[root@nb ~]# hostname
[root@nb ~]# alias hn=‘hostname’ #定義別名hn
[root@nb ~]# hn

[root@nb ~]# alias mycat=‘cat -n’ #定義別名mycat
[root@nb ~]# mycat /etc/hosts

[root@nb ~]# alias #顯示系統所有有效的別名

建立目錄,-p:連同父目錄一起建立
[root@nb ~]# mkdir -p /opt/aa/bb/cc/dd
[root@nb ~]# ls -R /opt/aa

[root@nb ~]# mkdir -p /opt/vod/haha
[root@nb ~]# ls -R /opt/vod

rm -rf刪除資料

mv移動資料,原資料會消失
格式:mv 原檔案… 目標路徑

[root@nb ~]# rm -rf /opt/* #刪除/opt目錄下所有資料
[root@nb ~]# touch /opt/1.txt
[root@nb ~]# mkdir /opt/nsd
[root@nb ~]# ls /opt/

[root@nb ~]# mv /opt/1.txt /opt/nsd
[root@nb ~]# ls /opt/
[root@nb ~]# ls /opt/nsd/

mv的重新命名

[root@nb ~]# ls /opt/
[root@nb ~]# mv /opt/nsd/ /opt/abc #路徑不變的移動
[root@nb ~]# ls /opt/

[root@nb ~]# mv /opt/abc/ /opt/haha
[root@nb ~]# ls /opt/

[root@nb ~]# mv /opt/haha/ /opt/xixi
[root@nb ~]# ls /opt/

mv的重新命名,重新命名目錄資料的名字

[root@nb ~]# touch /mnt/2.txt
[root@nb ~]# ls /mnt/
[root@nb ~]# mv /mnt/2.txt /opt/xiha.txt #在移動中,修改目標資料的名字
[root@nb ~]# ls /opt/

[root@nb ~]# mkdir /mnt/test
[root@nb ~]# ls /mnt/
[root@nb ~]# ls /opt/
[root@nb ~]# mv /mnt/test/ /opt/student #將test目錄移動到/opt並且改名為student
[root@nb ~]# ls /opt/

[root@nb ~]# mkdir /mnt/nsd10
[root@nb ~]# ls /mnt/
[root@nb ~]# mv /mnt/nsd10/ /opt/student #將nsd10目錄移動到student目錄下
[root@nb ~]# ls /mnt/
[root@nb ~]# ls /opt/student/

mv支援多個引數,永遠會把最後一個引數作為目標,其他引數作為原資料
[root@nb ~]# touch /mnt/10.txt
[root@nb ~]# mkdir /mnt/nsd11
[root@nb ~]# ls /mnt/

[root@nb ~]# mv /mnt/10.txt /mnt/nsd11/ /opt/
[root@nb ~]# ls /opt/

cp複製資料

原資料不會消失

格式:cp 原檔案… 目標路徑
-r 選項:複製目錄必須加上此選項,遞迴複製

[root@nb ~]# rm -rf /opt/*
[root@nb ~]# cp /etc/redhat-release /opt/
[root@nb ~]# ls /opt/

[root@nb ~]# cp /etc/redhat-release /opt/r.txt
[root@nb ~]# ls /opt/

[root@nb ~]# cp -r /home/ /opt/
[root@nb ~]# ls /opt/
[root@nb ~]# cp -r /home/ /opt/myhome
[root@nb ~]# ls /opt/

cp時出現重名覆蓋
[root@nb ~]# cp -r /boot/ /opt/
[root@nb ~]# \cp -r /boot/ /opt/ #在本次操作,臨時取消別名

cp與一個點的連用,將資料複製到當前路徑下
. 表示當前的目錄

[root@nb ~]# cd /etc/sysconfig/network-scripts/
[root@nb network-scripts]# pwd
[root@nb network-scripts]# cp /etc/fstab .
[root@nb network-scripts]# ls

[root@nb network-scripts]# cp /etc/passwd .
[root@nb network-scripts]# ls

cp支援多個引數,永遠會把最後一個引數作為目標,其他引數作為原資料
[root@nb /]# cp /etc/passwd /etc/hosts /mnt/
[root@nb /]# ls /mnt/

四、 檔案內容的過濾

  • 根據字串模式提取文字行

grep [選項] ‘匹配模式’ 文字檔案…

常用命令選項
-v,取反匹配
-i,忽略大小寫

[root@nb /]# grep root /etc/passwd
[root@nb /]# grep bash /etc/passwd

[root@nb /]# grep -v root /etc/passwd
[root@nb /]# grep -i man /etc/man_db.conf

常用的匹配模式
– word 包含字串word
– ^word 以字串word開頭
– word$ 以字串word結尾

[root@nb /]# grep ^root /etc/passwd #以root開頭
[root@nb /]# grep root$ /etc/passwd #以root結尾
[root@nb /]# grep bash$ /etc/passwd #以bash結尾

相關文章