Ctrl+Alt+(F1-F6):切換虛擬終端 Ctrl+Alt:滑鼠切換界面 $:普通用戶登錄後系統的提示符 #:root用戶登錄後系統的提示符 Linux命令 exit 用於退出目前的shell who 用於顯示系統中有哪些使用者正在上面,顯示的資料包含了使用者ID、使用的終端機、從哪邊連上來的 ...
Ctrl+Alt+(F1-F6):切換虛擬終端
Ctrl+Alt:滑鼠切換界面
$:普通用戶登錄後系統的提示符
#:root用戶登錄後系統的提示符
Linux命令
exit 用於退出目前的shell
who 用於顯示系統中有哪些使用者正在上面,顯示的資料包含了使用者ID、使用的終端機、從哪邊連上來的、上線時間、呆滯時間、CPU 使用量、動作等等
whoami 用於顯示自身用戶名稱,本指令相當於執行"id -un"指令
date 用來顯示或設定系統的日期與時間
clear 清屏(Ctrl+l)
su 用於變更為其他使用者的身份,除 root 外,需要鍵入該使用者的密碼
例:su - root #切換到root用戶
cd 用於切換當前工作目錄至 dirName(目錄參數);其中 dirName 表示法可為絕對路徑或相對路徑。若目錄名稱省略,則變換至使用者的 home 目錄 (也就是剛 login 時所在的目錄);另外,"~" 也表示為 home 目錄 的意思,"." 則是表示目前所在的目錄,".." 則表示目前目錄位置的上一層目錄
例:cd /usr/bin/ #跳到 /usr/bin/
cd ~ #跳到自己的 home 目錄
cd ../.. #跳到目前目錄的上上兩層
useradd 用於建立用戶帳號;帳號建好之後,再用passwd設定帳號的密碼.而可用userdel刪除帳號;使用useradd指令所建立的帳號,實際上是保存在/etc/passwd文本文件中
passwd 用來更改使用者的密碼
例:passwd pd #設置pd用戶的密碼
usermod 用來修改用戶帳號的各項設定
ls 用於顯示指定工作目錄下之內容(列出目前工作目錄所含之文件及子目錄)
語法:ls -al name
ls -i /pd.txt #查看pd.txt的inode號
-a 顯示所有文件及目錄 (ls內定將文件名或目錄名稱開頭為"."的視為隱藏檔,不會列出)
-l 除文件名稱外,亦將文件型態、許可權、擁有者、文件大小等資訊詳細列出
pwd 用於顯示工作目錄;執行pwd指令可立刻得知您目前所在的工作目錄的絕
對路徑名稱
cp 主要用於複製文件或目錄
mv 用來為文件或目錄改名、或將文件或目錄移入其它位置
例:mv aa bb #將文件aa更名為bb
mv info/ logs #將info目錄放入logs目錄中。註意,如果logs目錄不存在,則該命令將info改名為logs
mkdir 用於建立名稱為dirName之子目錄
參數:-p 確保目錄名稱存在,不存在的就建一個
例:mkdir aa #在工作目錄下,建立一個名為aa的子目錄
mkdir -p bb/Test #在工作目錄下的bb目錄中,建立一個名為 Test 的子目錄;若bb目錄原本不存在,則建立一個;(註:本例若不加 -p,且原本bb目錄不存在,則產生錯誤)
touch 用於修改文件或者目錄的時間屬性,包括存取時間和更改時間;若文件不存在,系統會建立一個新的文件;ls -l 可以顯示檔案的時間記錄
例:touch text.txt #新建text.txt
touch {1..9}.txt #相當於9條命令,新建1.txt到9.txt
rm 用於刪除一個文件或者目錄
rm text.txt #刪除文件text.txt
rm -r homework #刪除目錄homework
rm -r * #刪除當前目錄下的所有文件及目錄
#刪除文件可以直接使用rm命令,若刪除目錄則必須配合選項"-r"
文件一旦通過rm命令刪除,則無法恢復,所以必須格外小心地使用該命令
cat 用於連接文件並列印到標準輸出設備上
例:cat text.txt #查看text.txt裡面的內容
head 指定顯示頭部內容的文件列表
例:head -n file #顯示file文件的前n行(不帶-n預設顯示10行)
tail 可用於查看文件的內容,有一個常用的參數 -f 常用於查閱正在改變的日誌文件;tail -f file會把 file文件里的最尾部的內容顯示在屏幕上,並且不斷刷新,只要 file更新就可以看到最新的文件內容
例:tail -n file #顯示file文件的後n行(不帶-n預設顯示10行)
tail -f file #跟蹤名為file文件的增長情況
more 命令類似 cat ,不過會以一頁一頁的形式顯示,更方便使用者逐頁閱讀,而最基本的指令就是按空白鍵(space)就往下一頁顯示,按 b 鍵就會往回(back)一頁顯示,而且還有搜尋字串的功能(與 vi 相似),使用中的說明文件,請按 h
例:more +n file #從第n行開始顯示file文檔內容
less 與 more 類似,但使用 less 可以隨意瀏覽文件,而 more 僅能向前移動,卻不能向後移動,而且 less 在查看之前不會載入整個文件
groupadd 用於創建一個新的工作組,新工作組的信息將被添加到系統文件中
groupmod 用於更改群組識別碼或名稱
[[email protected] ~]# groupadd linuxso
[[email protected] ~]# tail -1 /etc/group
linuxso:x:500:
[[email protected] ~]# groupmod -n linux linuxso
[[email protected] ~]# tail -1 /etc/group
linux:x:500:
chgrp 用於變更文件或目錄的所屬群組;在UNIX系統家族裡,文件或目錄許可權的掌控以擁有者及所屬群組來管理。您可以使用chgrp指令去變更文件與目錄的所屬群組,設置方式採用群組名稱或群組識別碼皆可
chown Linux/Unix 是多人多工操作系統,所有的文件皆有擁有者;利用 chown 將指定文件的擁有者改為指定的用戶或組,用戶可以是用戶名或者用戶ID;組可以是組名或者組ID;文件是以空格分開的要改變許可權的文件列表,支持通配符;一般來說,這個指令只有是由系統管理者(root)所使用,一般使用者沒有許可權可以改變別人的文件擁有者,也沒有許可權可以自己的文件擁有者改設為別人;只有系統管理者(root)才有這樣的許可權
說明:chown 屬主.屬組 參數 #改屬主屬組
chown 屬主 參數 #只改屬主
chown .屬組 參數 #只改屬組
chown -R屬主.屬組 text(text/aa/bb/) #遞歸改text目錄及目錄下所有文件的屬主屬組(遞歸改bb目錄及目錄下所有文件的屬主屬組)
chmod Linux/Unix 的文件調用許可權分為三級 : 文件擁有者、群組、其他;利用 chmod 可以藉以控制文件如何被他人所調用
- u 表示該文件的擁有者,g 表示與該文件的擁有者屬於同一個群體(group者,o 表示其他以外的人,a 表示這三者皆是
- r(4)表示可讀取,w(2)表示可寫入,x(1)表示可執行
例:chmod -R file #對file目錄下的所有與子目錄進行相同的許可權變更(即以遞迴的方式逐個變更)
chmod 777 file #對file文件u、g、o的許可權改為可讀可寫可執行
./ 運行命令
Linux下可以用 ll 命令來判斷文件類型,主要是根據每行的首個字元來判斷:
例:ll -d tmp/aa/bb/cc/ #查看cc目錄的許可權信息(-d專門用來查看目錄文件類型)
-rw-r--r-- #” - ”開頭的都是普通文件
drw-r--r-- #” d ”開頭的是目錄文件
brw-r--r-- #” b ”開頭的文件都是塊設備文件
crw-r--r-- #” c ”開頭的文件都是字元設備文件
srw-r--r-- #” s ”開頭的文件都是socket文件
prw-r--r-- #” p “開頭的文件都是管道文件
lrw-r--r-- #” l ”開頭的文件都是軟鏈接文件
> 左邊的內容覆蓋右邊的內容
>> 左邊的內容追加給右邊的內容
wc 可以計算文件的Byte數、字數、或是列數,若不指定文件名稱、或是所給予的文件名為"-",則wc指令會從標準輸入設備讀取數據
例:wc -l /etc/passwd #顯示passwd文件有多少行
tar 用來建立,還原備份文件的工具程式,它可以加入,解開備份文件內的文件
參數:-c或--create建立新的備份文件
-v或--verbose顯示指令執行過程
-f<備份文件>或--file=<備份文件>指定備份文件
#查看test.tar文件里的內容
參數:-t或--list 列出備份文件的內容
#解開(不是解壓)文件以及解開到opt目錄下
gzip 是個使用廣泛的壓縮程式命令,文件經它壓縮過後,其名稱後面會多出".gz"的擴展名
gunzip 是個使用廣泛的解壓縮程式命令,它用於解開被gzip壓縮過的文件,這些壓縮文件預設最後的擴展名為".gz";事實上gunzip就是gzip的硬連接,因此不論是壓縮或解壓縮,都可通過gzip指令單獨完成
bzip2 採用新的壓縮演演算法,壓縮效果比傳統的LZ77/LZ78壓縮演演算法來得好;若沒有加上任何參數,bzip2壓縮完文件後會產生.bz2的壓縮文件,並刪除原始的文件
參數:-v或--verbose壓縮或解壓縮文件時,顯示詳細的信息
bunzip2 可解壓縮.bz2格式的壓縮文件;bunzip2實際上是bzip2的符號連接,執行bunzip2與bzip2 -d的效果相同
Ctrl+a 游標移動到該跳命令首部
Ctrl+e 游標移動到該調命令尾部
Ctrl+c 取消當前命令
ps 用於顯示當前進程 (process) 的狀態
例:ps aux |grep “bash” |grep -v “grep”
Kill 用於刪除執行中的程式或工作
例:kill -9 123456 #強制殺死123456進程
vi/vim 所有的 Unix Like 系統都會內建 vi 文書編輯器,其他的文書編輯器則不一定會存在;但是目前我們使用比較多的是 vim 編輯器;vim 具有程式編輯的能力,可以主動的以字體顏色辨別語法的正確性,方便程式設計
vi、vim編輯器有三種模式:命令行模式、編輯模式、擴展模式
命令行模式:
a、i、o 進入編輯狀態
u 複原上一步操作
dd 刪除游標所在的那一行
ndd n為數字,刪除游標所在的向下n行;例如5dd則是刪除5行
yy 複製所在游標的那一行
nyy n為數字,複製游標所在的向下n行,例如5yy則是複製5行
p(小寫) 將已複製的數據在游標下一行黏貼
P(大寫) 將已複製的數據在游標上一行黏貼
ctrl+r 重做上一步操作
使用複製命令後np n為數字,將已複製的數據在游標上/下一行黏貼n行
使用刪除命令後按p 可以理解為剪切再粘貼
0 游標移動到該行的行首
$ 游標移動到該行的行尾
G 游標移動到這個文件的最後一行
nG n為數字,游標移動到這個文件的第n行;例如5G則是移動到第5行
gg 移動到這個文件的第一行,相當於1G
H 游標移動到這個屏幕的最上方那一行的第一個字元
M 游標移動到這個屏幕的中央那一行的第一個字元
L 游標移動到這個屏幕的最下方那一行的第一個字元
擴展模式:
Esc:wq! w為保存 q為退出 !為強制
set nu 顯示文件行號
Linux系統引導順序:bios--->mbr--->grub--->kernel--->init
fdisk 是一個創建和維護分區表的程式,它相容DOS類型的分區表、BSD或者SUN類型的磁碟列表
例:fdisk -l /dev/sda #創建分區
mksf 用於在特定的分區上建立 linux 文件系統(格式化)
例:mkfs.ext4 /dev/sda4 #將sda4分區格式化為ext4格式
mount 用於掛載Linux系統外的文件
例:mount /dev/hda1 /mnt #將 /dev/hda1 掛在 /mnt 之下
mount -o ro /dev/hda1 /mnt #將 /dev/hda1 用唯讀模式掛在 /mnt 之下
mount -o rw /dev/hda1 /mnt #將 /dev/hda1 用可讀寫模式掛在 /mnt 之下
何為掛載?
在linux操作系統中,掛載是指將一個設備(通常是存儲設備)掛接到一個已存在的目錄上;我們要訪問存儲設備中的文件,必須將文件所在的分區掛載到一個已存在的目錄上,然後通過訪問這個目錄來訪問存儲設備
umount 用於卸除文件系統;可卸除目前掛在Linux目錄中的文件系統
df 用於顯示目前在Linux系統上的文件系統的磁碟使用情況統計
du 用於顯示目錄或文件的大小;會顯示指定的目錄或文件所占用的磁碟空間
ln 為某一個文件在另外一個位置建立一個同步的鏈接;當我們需要在不同的目錄,用到相同的文件時,我們不需要在每一個需要的目錄下都放一個必須相同的文件,我們只要在某個固定的目錄,放上該文件,然後在其它的目錄下用ln命令鏈接(link)它就可以,不必重覆的占用磁碟空間
ln軟鏈接:
格式:ln -s 源路徑 目標路徑
特點:1.相當於win中的快捷方式
2.刪除鏈接文件,源文件無影響
3.刪除源文件,鏈接文件失效
4.修改源文件/鏈接文件,內容都變
5.軟鏈接是指向文件名的
軟鏈接中:source.txt和dex.txt的inode號不同
ln硬鏈接:
格式:ln 源路徑 目標路徑
特點:1.刪除鏈接文件,源文件無影響
2.刪除源文件,鏈接文件無影響
3.修改源文件/鏈接文件,內容都改
4.硬鏈接執行inode號
硬鏈接中:a.txt和b.txt的inode號相同
軟鏈接可以跨分區;硬鏈接中a.txt和new.txt的inode號可以一樣,但是他們在不同分區中,導致不在同一個block塊,所以硬鏈接不可以跨分區
用4段8位二進位數表示ip地址
172.16.122.204/16------->16為子網掩碼
網路地址:172.16.0.0
主機地址:172.16.122.204
將ip地址中的網路位和主機位固定下來後,ip地址被分成了不同的幾類:A類、B類、C類、D類、E類;這裡展示前3類
特殊ip地址
ifconfig 用於顯示或設置網路設備;可設置網路設備的狀態,或是顯示目前的設置
chkconfig 用於檢查,設置系統的各種服務
rpm 用於管理套件
rpm -ivh package.rpm #安裝一個rpm包
rpm -qa #顯示系統中所有已經安裝的rpm包
rpm -e package_name.rpm #刪除一個rpm包
yum 是一個在Fedora和RedHat以及SUSE中的Shell前端軟體包管理器;基於RPM包管理,能夠從指定的伺服器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝;yum提供了查找、安裝、刪除某一個、一組甚至全部軟體包的命令,而且命令簡潔而又好記
yum install package_name #下載並安裝一個rpm包
yum remove package_name #刪除一個rpm包
yum update package_name.rpm #更新當前系統中所有安裝的rpm包
yum update package_name #更新一個rpm包
Linux部署apache服務的步驟:示例
1.準備環境
關閉防火牆:service iptables stop(chkconfig iptables off)
關閉selinux:setenforce 0(SELINUX=disabled)
配置ip:vi /etc/sysconfig/network-scripts/ifcfg-eth0
2.安裝軟體包:yum install httpd -y
3.修改配置文件:vim /etc/httpd/conf/httpd.conf #記住Listen和DocumentRoot
cd /var/www/html/(DocumentRoot)
touch test.txt
echo “部署服務” > test.txt
echo “預設頁面” > index.html
4.重啟服務:service httpd restart
5.打開瀏覽器:http://服務端ip:埠(Listen)/test.txt(index.html)