Linux計算機基礎 DAY03
阿新 • • 發佈:2018-11-04
#! 紅色字型為重點掌握之概念
#############################################################################################
什麼是命令?
• Linux命令
– 用來實現某一類功能的指令或程式
Linux執行大多數命令,都要找到相應的程式執行
綠色:程式
– 命令的執行依賴於直譯器(預設的直譯器/bin/bash) 使用者-------》 直譯器------》核心--------》硬體 [[email protected] ~]# cat /etc/shells #存放直譯器程式路徑檔案
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh
[[email protected] ~]# • Linux命令的分類
– 內部命令:屬於直譯器的一部分
– 外部命令:直譯器之外的其他程式 #############################################
命令列的一般格式
• 基本用法
– 命令字 [選項]... [引數1] [引數2]...
快速編輯技巧
• Tab鍵自動補全
– 可補齊命令字、選項、引數、檔案路徑、軟體名、服務名 # ls /etc/sysconfig/network-scripts/ifcfg-eth0 # ls /et(tab)/sysco(tab)/netw(tab)-(tab)/ifc(tab)-e(tab) # cat /et(tab)/red(tab)-r(tab) # if(tab)(tab)
# ifco(tab) • 快捷鍵
– Ctrl + l:清空整個螢幕
– Ctrl + c:結束正在執行的命令
– Esc + . 或 Alt + . :貼上上一個命令的引數
–
Ctrl + u:清空至行首
– Ctrl + w:往回刪除一個單詞(以空格界定) [[email protected] ~]# ls /etc/redhat-release
[[email protected] ~]# ls -l Alt + .
[[email protected] ~]# cat Alt + .
[[email protected] ~]# cat -n Alt + . ##############################################
mount掛載操作:可以將目錄指定為裝置的訪問點 Windows如何訪問光碟內容
光碟------->光碟機裝置------->CD驅動器(訪問點) Linux如何訪問光碟內容
光碟------->光碟機裝置-------->訪問點(目錄)
在Linux中光碟機裝置,是利用檔案形式表示
/dev/cdrom 訪問光碟機裝置,必須通過訪問點 1. 圖形操作光碟映象檔案放入,虛擬的光碟機裝置 2.檢視光碟機裝置
[[email protected] ~]# ls /dev/cdrom
/dev/cdrom #青色代表快捷方式
[[email protected] ~]# ls -l /dev/cdrom
lrwxrwxrwx. 1 root root 3 11月 2 10:25 /dev/cdrom -> sr0
[[email protected] ~]# ls /dev/sr0 3.掛載 指定裝置的訪問點
[[email protected] ~]# mkdir /dvd
[[email protected] ~]# ls /dvd/
[[email protected] ~]# mount /dev/cdrom /dvd
[[email protected] ~]# ls /dvd/
[[email protected] ~]# ls /dvd/P(tab) 總結:
1 .Linux光碟機裝置/dev/cdrom
2.訪問光碟機裝置內容,必須通過訪問點(掛載點)
3. Linux中的訪問點為一個目錄
4. 利用mount命令 可以 讓目錄 成為 裝置的訪問點(掛載點)
4.解除安裝
[[email protected] ~]# ls /dvd [[email protected] ~]# umount /dvd
[[email protected] ~]# ls /dvd/ #################################################
注意事項:
1.解除安裝,當前路徑不要是掛載點內
[[email protected] dvd]# umount /dvd/
umount: /dvd:目標忙。 2 .掛載點最好是自己建立的目錄 #################################################
目錄和檔案管理 • cd — Change Directory
– 用途:切換工作目錄
– 格式:cd [目標資料夾位置] . 表示當前目錄 .. 表示父目錄(上一級) [[email protected] /]# cd /etc/pki/
[[email protected] pki]# pwd
/etc/pki
[[email protected] pki]# cd ..
[[email protected] etc]# pwd
/etc
[[email protected] etc]# cd ..
[[email protected] /]# pwd [[email protected] /]# cd /root
[[email protected] ~]# pwd
[[email protected] ~]# cd ..
[[email protected] /]# pwd ~user表示使用者user的家目錄
~:代表使用者的家目錄
/root: 管理員root的家目錄
/home: 存放所有普通使用者的家目錄
[[email protected] /]# cd ~root #去往root使用者的家目錄
[[email protected] ~]# pwd [[email protected] ~]# cd ~lisi #去往lisi使用者的家目錄
[[email protected] lisi]# pwd
[[email protected] lisi]# useradd zhangsan #建立zhangsan使用者
[[email protected] lisi]# cd ~zhangsan #去往zhangsan使用者的家目錄
[[email protected] zhangsan]# pwd
##################################################
• ls — List
– 格式: ls [選項]... [目錄或檔名]
• 常用命令選項
– -l:以長格式顯示
– -A:包括名稱以 . 開頭的隱藏文件
– -d:顯示目錄本身(而不是內容)的屬性
– -h:提供易讀的容量單位(K、M等) [[email protected] /]# ls --help
[[email protected] /]# ls -lh /boot [[email protected] /]# ls -l /root
[[email protected] /]# ls -ld /root
[[email protected] /]# ls -ld / [[email protected] /]# ls -A /root
[[email protected] /]# ls -A /boot 補充: -R:遞迴 顯示
[[email protected] /]# ls -R /opt
[[email protected] /]# ls -R /root
[[email protected] /]# ls -R /boot
遞迴:目錄本身,及目錄下所有,及子目錄下所有,及........ ################################################# 使用萬用字元
• 針對不確定的文件名稱,以特殊字元表示
– *:任意多個任意字元
– ?:單個字元 [[email protected] /]# ls /boot/vm* #以vm開頭
[[email protected] /]# ls /etc/*tab #以tab結尾
[[email protected] /]# ls /etc/r*.conf #以r開頭和.conf結尾
[[email protected] /]# ls /etc/*.conf #以.conf結尾
[[email protected] /]# ls /dev/tty* #以tty開頭 [[email protected] /]# ls /dev/tty? #以tty開頭,後面必須要有一個字元
[[email protected] /]# ls /dev/tty??
[[email protected] /]# ls /etc/??tab
• 針對不確定的文件名稱,以特殊字元表示
– [a-z]:多個字元或連續範圍中的一個,若無則忽略
– {a,min,xy}:多組不同的字串,全匹配 [[email protected] /]# ls /dev/tty[1-3]
[[email protected] /]# ls /dev/tty[4-8] [[email protected] /]# ls /dev/tty{1,3,10,60}
[[email protected] /]# ls /dev/tty{S0,S1,S2} #################################################
命令的別名:簡化複雜的命令 alias 別名='複雜的命令' [[email protected] /]# alias myls='ls -lhd' #定義別名
[[email protected] /]# alias #檢視所有生效的別名
[[email protected] /]# myls /root/ #執行別名
[[email protected] /]# unalias myls #刪除別名 [[email protected] /]# alias hn='hostname'
[[email protected] /]# alias
[[email protected] /]# hn
[[email protected] /]# unalias hn ############################################### 請定義一個別名 實現執行 qstat
系統將執行 /bin/ps -Ao pid,tt,user,fname,rsz alias qstat='/bin/ps -Ao pid,tt,user,fname,rsz' ################################################
mkdir 建立目錄
• mkdir — Make Directory
– 格式:mkdir [-p] [/路徑/]目錄名... [[email protected] /]# mkdir -p /vod/movie/cartoon
[[email protected] /]# ls -R /vod [[email protected] /]# mkdir -p /opt/aa/bb/cc/dd
[[email protected] /]# ls -R /opt/aa
################################################
rm 刪除
• rm — Remove
– 格式:rm [選項]... 檔案或目錄...
• 常用命令選項
– -r、-f:遞迴刪除(含目錄)、強制刪除 [[email protected] /]# rm -rf /opt/*
[[email protected] /]# mkdir /opt/nsd01 [[email protected] /]# touch /opt/1.txt /opt/2.txt
[[email protected] /]# ls /opt [[email protected] /]# rm -rf /opt/1.txt
[[email protected] /]# ls /opt [[email protected] /]# rm -rf /opt/2.txt
[[email protected] /]# ls /opt ################################################
mv 移動/改名
• mv — Move
– 格式:mv [選項]... 原檔案... 目標路徑 [[email protected] /]# rm -rf /opt/*
[[email protected] /]# ls /opt/
[[email protected] /]# touch /opt/1.txt
[[email protected] /]# mkdir /opt/nsd
[[email protected] /]# ls /opt/ [[email protected] /]# mv /opt/1.txt /opt/nsd
[[email protected] /]# ls /opt/
[[email protected] /]# ls /opt/nsd/ 重新命名:路徑不變的移動
[[email protected] /]# mv /opt/nsd /opt/student
[[email protected] /]# ls /opt/
[[email protected] /]# mv /opt/student/ /opt/test
[[email protected] /]# ls /opt/ ###############################################
cp 複製
• cp — Copy
– 格式:cp [選項]... 原檔案... 目標路徑 • 常用命令選項
– -r:遞迴,複製目錄時必須有此選項 [[email protected] /]# rm -rf /opt/*
[[email protected] /]# cp /etc/passwd /opt/
[[email protected] /]# ls /opt/ [[email protected] /]# cp /etc/fstab /opt/
[[email protected] /]# ls /opt/ [[email protected] /]# cp -r /home/ /opt/
[[email protected] /]# ls /opt/
[[email protected] /]# ls /opt/home/
[[email protected] /]# cp -r /boot/ /opt/
[[email protected] /]# ls /opt/
[[email protected] /]# ls /opt/boot
複製與 點 結合連用
[[email protected] /]# cd /opt/
[[email protected] opt]# ls
[[email protected] opt]# cp /etc/redhat-release .
[[email protected] opt]# ls
[[email protected] /]# cd /etc/pki/CA
[[email protected] CA]# pwd
[[email protected] CA]# ls
[[email protected] CA]# cp /etc/passwd .
[[email protected] CA]# ls 複製支援多引數:
永遠會把最後一個引數作為目標,其它所有引數作為源
[[email protected] /]# cp -r /home/ /boot/ /etc/inittab /mnt/
[[email protected] /]# ls /mnt/ 複製時 出現重名 覆蓋
[[email protected] /]# rm -rf /opt/*
[[email protected] /]# cp -r /boot/ /opt/
[[email protected] /]# ls /opt/
臨時取消別名:
[[email protected] /]# \cp -r /boot/ /opt/ 複製時 可以重新命名 目標文件名稱 [[email protected] /]# cp /etc/redhat-release /opt/
[[email protected] /]# ls /opt/
[[email protected] /]# cp /etc/redhat-release /opt/abc
[[email protected] /]# ls /opt/
請說明兩次複製的不同?
[[email protected] /]# rm -rf /opt/*
[[email protected] /]# ls /opt/
[[email protected] /]# cp -r /home/ /opt/pub
#將/home複製到/opt重新命名為pub
[[email protected] /]# ls /opt/
[[email protected] /]# cp -r /home/ /opt/pub
#將/home複製到/opt/pub目錄下 [[email protected] /]# ls /opt/
pub
[[email protected] /]# ls /opt/pub/ ###############################################
使用vim建立/修改檔案
• vim文字編輯器
– 格式:vim [[/目錄/]檔名]
– 若目標檔案不存在,則新建空檔案並編輯
– 若目標檔案已存在,則開啟此檔案並編輯 命令模式 插入模式(輸入模式 編輯模式) 末行模式 [[email protected] /]# vim /opt/haxi.txt i 鍵
命----------------》輸入模式(Esc 鍵 回到命令模式 )
令
模
式----------------》末行模式(Esc 鍵 回到命令模式 )
: 鍵 末行模式輸入 :wq 儲存並推出
末行模式輸入 :q! 強制不儲存並推出 #################################################
– 用來實現某一類功能的指令或程式
Linux執行大多數命令,都要找到相應的程式執行
綠色:程式
– 命令的執行依賴於直譯器(預設的直譯器/bin/bash) 使用者-------》 直譯器------》核心--------》硬體 [[email protected] ~]# cat /etc/shells #存放直譯器程式路徑檔案
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh
[[email protected] ~]# • Linux命令的分類
– 內部命令:屬於直譯器的一部分
– 外部命令:直譯器之外的其他程式 #############################################
命令列的一般格式
• 基本用法
– 命令字 [選項]... [引數1] [引數2]...
• Tab鍵自動補全
– 可補齊命令字、選項、引數、檔案路徑、軟體名、服務名 # ls /etc/sysconfig/network-scripts/ifcfg-eth0 # ls /et(tab)/sysco(tab)/netw(tab)-(tab)/ifc(tab)-e(tab) # cat /et(tab)/red(tab)-r(tab) # if(tab)(tab)
# ifco(tab) • 快捷鍵
– Ctrl + l:清空整個螢幕
– Ctrl + c:結束正在執行的命令
– Esc + . 或 Alt + .
– Ctrl + w:往回刪除一個單詞(以空格界定) [[email protected] ~]# ls /etc/redhat-release
[[email protected] ~]# ls -l Alt + .
[[email protected] ~]# cat Alt + .
[[email protected] ~]# cat -n Alt + . ##############################################
mount掛載操作:可以將目錄指定為裝置的訪問點 Windows如何訪問光碟內容
光碟------->光碟機裝置------->CD驅動器(訪問點) Linux如何訪問光碟內容
光碟------->光碟機裝置-------->訪問點(目錄)
在Linux中光碟機裝置,是利用檔案形式表示
/dev/cdrom 訪問光碟機裝置,必須通過訪問點 1. 圖形操作光碟映象檔案放入,虛擬的光碟機裝置 2.檢視光碟機裝置
[[email protected] ~]# ls /dev/cdrom
/dev/cdrom #青色代表快捷方式
[[email protected] ~]# ls -l /dev/cdrom
lrwxrwxrwx. 1 root root 3 11月 2 10:25 /dev/cdrom -> sr0
[[email protected] ~]# ls /dev/sr0 3.掛載 指定裝置的訪問點
[[email protected] ~]# mkdir /dvd
[[email protected] ~]# ls /dvd/
[[email protected] ~]# mount /dev/cdrom /dvd
[[email protected] ~]# ls /dvd/
[[email protected] ~]# ls /dvd/P(tab) 總結:
1 .Linux光碟機裝置/dev/cdrom
2.訪問光碟機裝置內容,必須通過訪問點(掛載點)
3. Linux中的訪問點為一個目錄
4. 利用mount命令 可以 讓目錄 成為 裝置的訪問點(掛載點)
4.解除安裝
[[email protected] ~]# ls /dvd [[email protected] ~]# umount /dvd
[[email protected] ~]# ls /dvd/ #################################################
注意事項:
1.解除安裝,當前路徑不要是掛載點內
[[email protected] dvd]# umount /dvd/
umount: /dvd:目標忙。 2 .掛載點最好是自己建立的目錄 #################################################
目錄和檔案管理 • cd — Change Directory
– 用途:切換工作目錄
– 格式:cd [目標資料夾位置] . 表示當前目錄 .. 表示父目錄(上一級) [[email protected] /]# cd /etc/pki/
[[email protected] pki]# pwd
/etc/pki
[[email protected] pki]# cd ..
[[email protected] etc]# pwd
/etc
[[email protected] etc]# cd ..
[[email protected] /]# pwd [[email protected] /]# cd /root
[[email protected] ~]# pwd
[[email protected] ~]# cd ..
[[email protected] /]# pwd ~user表示使用者user的家目錄
~:代表使用者的家目錄
/root: 管理員root的家目錄
/home: 存放所有普通使用者的家目錄
[[email protected] /]# cd ~root #去往root使用者的家目錄
[[email protected] ~]# pwd [[email protected] ~]# cd ~lisi #去往lisi使用者的家目錄
[[email protected] lisi]# pwd
[[email protected] lisi]# useradd zhangsan #建立zhangsan使用者
[[email protected] lisi]# cd ~zhangsan #去往zhangsan使用者的家目錄
[[email protected] zhangsan]# pwd
##################################################
• ls — List
– 格式: ls [選項]... [目錄或檔名]
• 常用命令選項
– -l:以長格式顯示
– -A:包括名稱以 . 開頭的隱藏文件
– -d:顯示目錄本身(而不是內容)的屬性
– -h:提供易讀的容量單位(K、M等) [[email protected] /]# ls --help
[[email protected] /]# ls -lh /boot [[email protected] /]# ls -l /root
[[email protected] /]# ls -ld /root
[[email protected] /]# ls -ld / [[email protected] /]# ls -A /root
[[email protected] /]# ls -A /boot 補充: -R:遞迴 顯示
[[email protected] /]# ls -R /opt
[[email protected] /]# ls -R /root
[[email protected] /]# ls -R /boot
遞迴:目錄本身,及目錄下所有,及子目錄下所有,及........ ################################################# 使用萬用字元
• 針對不確定的文件名稱,以特殊字元表示
– *:任意多個任意字元
– ?:單個字元 [[email protected] /]# ls /boot/vm* #以vm開頭
[[email protected] /]# ls /etc/*tab #以tab結尾
[[email protected] /]# ls /etc/r*.conf #以r開頭和.conf結尾
[[email protected] /]# ls /etc/*.conf #以.conf結尾
[[email protected] /]# ls /dev/tty* #以tty開頭 [[email protected] /]# ls /dev/tty? #以tty開頭,後面必須要有一個字元
[[email protected] /]# ls /dev/tty??
[[email protected] /]# ls /etc/??tab
• 針對不確定的文件名稱,以特殊字元表示
– [a-z]:多個字元或連續範圍中的一個,若無則忽略
– {a,min,xy}:多組不同的字串,全匹配 [[email protected] /]# ls /dev/tty[1-3]
[[email protected] /]# ls /dev/tty[4-8] [[email protected] /]# ls /dev/tty{1,3,10,60}
[[email protected] /]# ls /dev/tty{S0,S1,S2} #################################################
命令的別名:簡化複雜的命令 alias 別名='複雜的命令' [[email protected] /]# alias myls='ls -lhd' #定義別名
[[email protected] /]# alias #檢視所有生效的別名
[[email protected] /]# myls /root/ #執行別名
[[email protected] /]# unalias myls #刪除別名 [[email protected] /]# alias hn='hostname'
[[email protected] /]# alias
[[email protected] /]# hn
[[email protected] /]# unalias hn ############################################### 請定義一個別名 實現執行 qstat
系統將執行 /bin/ps -Ao pid,tt,user,fname,rsz alias qstat='/bin/ps -Ao pid,tt,user,fname,rsz' ################################################
mkdir 建立目錄
• mkdir — Make Directory
– 格式:mkdir [-p] [/路徑/]目錄名... [[email protected] /]# mkdir -p /vod/movie/cartoon
[[email protected] /]# ls -R /vod [[email protected] /]# mkdir -p /opt/aa/bb/cc/dd
[[email protected] /]# ls -R /opt/aa
################################################
rm 刪除
• rm — Remove
– 格式:rm [選項]... 檔案或目錄...
• 常用命令選項
– -r、-f:遞迴刪除(含目錄)、強制刪除 [[email protected] /]# rm -rf /opt/*
[[email protected] /]# mkdir /opt/nsd01 [[email protected] /]# touch /opt/1.txt /opt/2.txt
[[email protected] /]# ls /opt [[email protected] /]# rm -rf /opt/1.txt
[[email protected] /]# ls /opt [[email protected] /]# rm -rf /opt/2.txt
[[email protected] /]# ls /opt ################################################
mv 移動/改名
• mv — Move
– 格式:mv [選項]... 原檔案... 目標路徑 [[email protected] /]# rm -rf /opt/*
[[email protected] /]# ls /opt/
[[email protected] /]# touch /opt/1.txt
[[email protected] /]# mkdir /opt/nsd
[[email protected] /]# ls /opt/ [[email protected] /]# mv /opt/1.txt /opt/nsd
[[email protected] /]# ls /opt/
[[email protected] /]# ls /opt/nsd/ 重新命名:路徑不變的移動
[[email protected] /]# mv /opt/nsd /opt/student
[[email protected] /]# ls /opt/
[[email protected] /]# mv /opt/student/ /opt/test
[[email protected] /]# ls /opt/ ###############################################
cp 複製
• cp — Copy
– 格式:cp [選項]... 原檔案... 目標路徑 • 常用命令選項
– -r:遞迴,複製目錄時必須有此選項 [[email protected] /]# rm -rf /opt/*
[[email protected] /]# cp /etc/passwd /opt/
[[email protected] /]# ls /opt/ [[email protected] /]# cp /etc/fstab /opt/
[[email protected] /]# ls /opt/ [[email protected] /]# cp -r /home/ /opt/
[[email protected] /]# ls /opt/
[[email protected] /]# ls /opt/home/
[[email protected] /]# cp -r /boot/ /opt/
[[email protected] /]# ls /opt/
[[email protected] /]# ls /opt/boot
複製與 點 結合連用
[[email protected] /]# cd /opt/
[[email protected] opt]# ls
[[email protected] opt]# cp /etc/redhat-release .
[[email protected] opt]# ls
[[email protected] /]# cd /etc/pki/CA
[[email protected] CA]# pwd
[[email protected] CA]# ls
[[email protected] CA]# cp /etc/passwd .
[[email protected] CA]# ls 複製支援多引數:
永遠會把最後一個引數作為目標,其它所有引數作為源
[[email protected] /]# cp -r /home/ /boot/ /etc/inittab /mnt/
[[email protected] /]# ls /mnt/ 複製時 出現重名 覆蓋
[[email protected] /]# rm -rf /opt/*
[[email protected] /]# cp -r /boot/ /opt/
[[email protected] /]# ls /opt/
臨時取消別名:
[[email protected] /]# \cp -r /boot/ /opt/ 複製時 可以重新命名 目標文件名稱 [[email protected] /]# cp /etc/redhat-release /opt/
[[email protected] /]# ls /opt/
[[email protected] /]# cp /etc/redhat-release /opt/abc
[[email protected] /]# ls /opt/
請說明兩次複製的不同?
[[email protected] /]# rm -rf /opt/*
[[email protected] /]# ls /opt/
[[email protected] /]# cp -r /home/ /opt/pub
#將/home複製到/opt重新命名為pub
[[email protected] /]# ls /opt/
[[email protected] /]# cp -r /home/ /opt/pub
#將/home複製到/opt/pub目錄下 [[email protected] /]# ls /opt/
pub
[[email protected] /]# ls /opt/pub/ ###############################################
使用vim建立/修改檔案
• vim文字編輯器
– 格式:vim [[/目錄/]檔名]
– 若目標檔案不存在,則新建空檔案並編輯
– 若目標檔案已存在,則開啟此檔案並編輯 命令模式 插入模式(輸入模式 編輯模式) 末行模式 [[email protected] /]# vim /opt/haxi.txt i 鍵
命----------------》輸入模式(Esc 鍵 回到命令模式 )
令
模
式----------------》末行模式(Esc 鍵 回到命令模式 )
: 鍵 末行模式輸入 :wq 儲存並推出
末行模式輸入 :q! 強制不儲存並推出 #################################################