1. 程式人生 > 實用技巧 >Linux入門--基礎命令

Linux入門--基礎命令

一、Linux入門

1.1、Linux目錄結構及含義

  • /bin 【重點】(/usr/bin、/usr/local/bin)
    • 是Binary的縮寫,這個目錄存放著最經常使用的命令
  • /sbin (/usr/sbin、/usr/local/sbin)
    • s就是Super User的意思,這裡存放的是系統管理員使用的系統管理程式。
  • /home 【重點】
    • 存放普通使用者的主目錄, 在Linux中每個使用者都有一個自己的目錄,一般
      該目錄名是以使用者的賬號命名的。
  • /root 【重點】
    該目錄為系統管理員,也稱作超級許可權者的使用者主目錄。
  • /boot 【重點】
    • 存放的是啟動Linux時使用的一些核心檔案,包括一些連線檔案以及映象檔案
  • /proc【勿動】
    • 這個目錄是-一個虛擬的目錄,它是系統記憶體的對映,訪問這個目錄來獲取系統資訊。
  • /srv【勿動】
    • service縮寫,該目錄存放一些服務啟動之後需要提取的資料。
  • /sys【勿動】
    • 這是linux2.6核心的一個很大的變化。該目錄下安裝了2.6核心中新出現的一個檔案系統
  • /tmp
    • 這個目錄是用來存放一 些臨時檔案的。
  • /dev
    • 類似於windows的裝置管理器,把所有的硬體用檔案的形式儲存。
  • /media【重點】
    • linux系統會自動識別一些裝置,例如U盤、光碟機等等,當識別後,linux
      會把識別的裝置掛載到這個目錄下。
  • /mnt【重點】
    • 系統提供該目錄是為了讓使用者臨時掛載別的檔案系統的,我們可以將外部的儲存掛
      載在/mnt/上,然後進入該目錄就可以檢視裡的內容了。
  • /opt
    • 這是給主機額外安裝軟體所擺放的目錄。如安裝ORACLE資料庫就可放到該目錄下。
      預設為空。
  • /usr/local【重點】
    • 這是另一個給主機額外安裝軟體所安裝的目錄。一般是通過編譯原始碼方式安裝的程式。
  • /var【重點】
    • 這個目錄中存放著在不斷擴充著的東西,習慣將經常被修改的目錄放在這個目錄下。
      包括各種日誌檔案。
  • /selinux [security-enhanced linux]
    • SELinux是一種安全子系統,它能控制程式只能訪問特定檔案。

二、常用命令

2.1、vim常用快捷鍵

  1. 拷貝當前行 yy,拷貝當前行向下的5行5yy,貼上(p) 。
  2. 刪除當前行dd
    , 刪除當前行向下的5行5dd
  3. 在檔案中查詢某個單詞[命令列下/關鍵字,回車查詢,輸入n就是查詢下一個]
  4. 設定檔案的行號,取消檔案的行號[命令列下:set nu:set nonu]
  5. 快捷鍵到底文件的最末行[G]和最首行[gg]注意這些都是在正常模式下執行的。
  6. 撤銷,正常模式下輸入u
  7. 將游標移動到第20行先輸入20再按shift+g

2.2、關機重啟命令

shutdown -h now	# 立即關機
shutdown -r now	# 立即重啟

halt			# 關機

reboot			# 重啟

sync			# 將記憶體的資料同步到磁碟

2.3、使用者登陸登出

logout			# 登出

su - <username>		# 切換到指定使用者並將當前目錄轉移到賬戶home目錄
su <username>		# 切換到指定使用者並將當前目錄不變

2.4、使用者、使用者組管理

  • /etc/passwd檔案
    • 使用者的配置檔案,記錄使用者的各種資訊
  • /etc/shadow檔案
    • 口令的配置檔案
  • /etc/group檔案
    • 組的配置檔案
useradd [-d <dir>] [-g <groupname>] <username>	# 新增使用者, -d表示指定home目錄
												#		   -g表示指定組名稱
												
usermod [-g <groupname> <username>]				# 將使用者修改到指定組
												
passwd <username>				# 指定使用者密碼

userdel [-d] <username>			# 刪除指定目錄,-d表示同時刪除home目錄

id <username>					# 查詢使用者資訊

groupadd <groupname>			# 新增組

groupdel <groupname>			# 刪除組

2.5、系統執行級別

代號 說明
0 關機
1 單使用者(找回密碼)
2 多使用者,無網路
3 多使用者,有網路
4 保留
5 圖形介面
6 重啟

新版本無法通過修改/etc/inittabid:initdefault調整執行級別

可通過如下命令修改

systemctl set-default graphical.target # 設定為5級別

systemctl set-default multi-user.target	# 設定為3級別

2.6、幫助命令

man <命令> # manual,手冊

help <命令>	# 獲取shell內建命令的幫助資訊

2.7、目錄、檔案命令

pwd		# 當前工作目錄的絕對路徑

ls [-a] [-l]	# 檢視當前目錄下的檔案;a:檢視所有,包括隱藏檔案(夾);l:檢視詳細資訊

cd [dir]		# 切換到指定目錄,~和不填為當前賬戶home目錄

mkdir [-p] <dir>	# 建立目錄,p:表示多級目錄
rmdir <dir>			# 刪除空目錄

touch <filename>	# 建立空檔案

cp [-r] <原始檔> <目標目錄>	# 複製檔案(夾),r:遞迴複製。命令前加“\”表示強制、不提示

mv <原始檔> <目標目錄>			# 移動/重新命名檔案/夾

rm [-r] [-f] <file/dir>		# 刪除檔案或目錄,r:遞迴刪除;f:強制、不提示

2.8、檢視檔案內容

cat [-n] <file>		# 以只讀方式檢視檔案內容,n:顯示行號

more <file>			# 全屏按頁檢視檔案內容,基於vi編輯器的文字過濾器
操作 說明
space 下一頁
enter 下一行
q 退出
ctrl+f 向下滾動一屏
ctrl+b 向上滾動一屏
= 輸出當前行號
:f 輸出檔名和當前行號
less <file>			# 分屏檢視內容,根據顯示載入內容,對大檔案高效
操作 說明
space 下一頁
page down 下一頁
page up 上一頁
/字元 向下查詢,n:下一個;N:上一個
?字元 向上查詢,n:上一個;N:下一個
q 退出
<指令> > <filename>		# 覆蓋檔案

<指令> >> <filename>		# 追加檔案

echo [-e] [text]		 # 在螢幕上列印文字,e:轉義生效

head [-n <num>] <file>	 # 檢視檔案頭十行的內容,n:自定義行數

tail [-n <num>] [-f] <file>		# 檢視檔案後十行內容,n:自定義行數,f:實時跟蹤檔案修改情況

ln [-s] <源> <連結名>	 # 建立連結,s:軟連線,可以是目錄或檔案。預設硬連結,只能是檔案
						# pwd時為軟連線所在目錄
						
history					# 檢視歷史命令,預設1000條,通過“!1”執行歷史命令

2.9、日期時間

date [-s <datetime>]	# 顯示日期時間,其餘命令查手冊,s:自己設定日期時間如:“2020-08-05 22:25:23”

cal [<year>]			# 檢視日曆,引數為具體顯示哪年,預設本月

2.10、搜尋

find [引數] [起始目錄]	# 查詢,name:查詢指定檔案
						#	   user:查詢指定使用者擁有
						#	   size:指定大小
						
grep [-n] [-i] <查詢內容> [查詢檔案] # 過濾查詢,n顯示匹配行號;i:不區分大小寫

2.11、壓縮、解壓縮

gzip <filename>					# 壓縮為*.gz的檔案,壓縮後原始檔不保留
gunzip <filename>				# *.gz的檔案解壓縮,解壓後原始檔不保留

zip [-r] <filename.zip> <原始檔>	# 壓縮為.zip的檔案,r:遞迴壓縮
unzip [-d <目錄>] <filename.zip>	# 解壓縮,d:解壓到目錄

tar 							# 打包命令,具體看文件