【Linux学习笔记】 -- 基本Shell命令
生活随笔
收集整理的這篇文章主要介紹了
【Linux学习笔记】 -- 基本Shell命令
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
常見的目錄名均基于文件系統層級標準(filesystem hierarchy standard,FHS)
Linux的四個部分:
1 Linux內核:控制所有硬軟件,必要時分配硬件根據需要執行軟件
- 系統內存管理:可用物理內存 + 創建、管理虛擬內存[交換空間]
- 軟件程序管理:進程/init進程/運行級init系統 [ps]
- 硬件設備管理:驅動代碼 / 驅動模塊
- 文件系統管理
2 GUN工具
3 圖形化桌面環境
4 應用軟件
Shell — CLI:command line interfacs 文本命令行界面
- 只接受文本輸入,只顯示文本和基本圖形輸出
基本bash shell 命令
1 cd
2 pwd
3 ls : 按字母排序顯示當前目錄下的文件和目錄
ls -F: 區分文件和目錄ls -a: 顯示所有文件和目錄,包含隱藏文件’.xx’ls -R -F: 當前路邊好漢的子目錄中為文件ls -l: 長列表格式輸出- 文件類型:d目錄/-文件/c字符型文件/b塊設備
- 文件的權限
- 文件的硬鏈接總數
- 文件屬主用戶名
- 文件屬主的組名
- 文件大小[字節]
- 文件上次修改時間
- 文件名或目錄名
man ls
4 ls過濾輸出列表
ls -l demols -l dem?: ?一個字符ls -l de*: * 多個字符ls -l d[a-i]mo: 指定字符范圍a-ils -l d[!a]mo: 非a
5 文件
-
創建文件
touch demo -
拷貝文件
cp source_addr destination_addrcp -i source_addr destination_addr: + 重復判斷cp -r source_addr destination_addr: 遞歸復制整個目錄
-
鏈接文件
ln -s link_file linked_file: linkend_file指向link_file,內容不同 -
重命名文件
mv old_file new_file -
刪除文件
rm -i achrived_filerm -f achrived_file:無詢問,強制刪除
6 目錄
- 創建目錄
mkidr new_dirmkdir -p new_dir/sub_dir/under_dir: 創建多個目錄及子目錄
- 刪除目錄
rmdir new_dir: 只刪除空目錄,非空拒絕刪除rm -ri new_dir: 刪除其中文件后再刪除目錄rm -rf new_dir: 危險操作,無提示
7 文件
- 文件類型查看
file my_file: 文件|目錄|鏈接文件 - 查看整個文件
cat demo.pycat -n demo.py: 帶行號查看文件cat -b demo.py: 有文本的行加行號cat -T demo.py: 不出現制表符more demo.py: 顯示每頁數據后停下less demo.py: 一次只顯示一屏的文件文本
- 查看部分文件
tail demo.py: 查看文件最后10行tail -n 4 demo.py: 文件最后4行head demo.py: 顯示文件前10行head -4 demo.py: 文件前4行
8 程序
- 探查進程
ps [-ef] | [-l]- UID — 啟動進程的用戶
- PID — Process ID 進程ID
- PPID — 父進程的進程號
- C — 進程生命周期中的CPU利用率
- STIME — 進程啟動時的系統時間
- TTY — 啟動進程的終端設備
- TIME — 運行進程需要的累計CPU時間
- CMD — 啟動的程序名稱
- 實時監測進程
top- COMMAND:進程對應的命令行命令,啟動的進程名
- %CPU:進行使用CPD時間比例
- 結束進程
kill {PID}- 掛起 HUP 1
- 終端 INT 2
- 結束運行 QUIT 3
- 無條件終止 KILL 9
- 段錯誤 SEGV 11
- 盡可能終止 TERM 15
- 無條件停止運行,但不終止 STOP 17
- 停止或暫停,但繼續在后臺運行 TSTP 18
- STOP或TSTP后恢復執行 CONT 19
killall http*: 結束所有以http開頭的進程
9 磁盤空間
mount掛載存儲媒體- Linux FS將所有磁盤并入一個虛擬目錄下。在使用新的存儲媒體之前,需要將它放在虛擬目錄之下
- 媒體的設備文件
- 媒體掛載到虛擬目錄的掛載點
- 文件系統類型
- 已掛在媒體的訪問狀態
mount -t vfat /dev/sdb1 /media/disk: 手動將U盤/dev/sdb1掛載到/media/diskumount [directory | device]: 通過設備文件后掛載點指定卸載設備[使用中,不可卸載]
df查看掛載磁盤使用情況- Filesystem:設備的設備文件位置
- 512-blocks:已容納多少個512字節大小的塊
- Used:已使用多少個512字節的塊
- Available:還有多少個512字節的塊可用
- %iused:已用空間比例
- Mounted on:設備掛載到了哪個掛載點上
df -h
du顯示特定目錄的磁盤使用情況,判斷某目錄下是否有超大文件-c:顯示所有已列出文件總的大小-h:按用戶易讀的格式輸出大小,K/M/G-s:顯示每個輸出參數的總計
10 大數據文件 — 處理 & 提取有用信息
sort [-n | -M] myfile: 排序文件du -sh * | sort -nr: -nr參數將結果按數字降序輸出sort -t ':' -k 3 -n /etc/passwd: 對密碼文件按照用戶ID進行數值排序
grep [option] pattern [file]: 在文件file中查找包含匹配pattern的行grep -v t file: file中不包含t的行grep -n t file: 顯示匹配行號grep -c t file: file中含t的共有多少行grep -e t -e f file: file中包含e或f的行 == grep [tf] file
11 壓縮數據
gzip myprog: 壓縮文件myprog,形成.gz文件gzcat: 查看壓縮過文本文件的內容gunzip: 文件解壓- 歸檔數據
tar function [option] object1 object2tar -cvf test.jar test/ test2/: 創建名為test.jar的歸檔文件,含有test和test2目錄內容tar -tf test.jar: 列出test.jar的內容,不提取文件tar -xvf testjar: 提取testjar內容
總結
以上是生活随笔為你收集整理的【Linux学习笔记】 -- 基本Shell命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [HTTP协议]基础篇-待完结
- 下一篇: Kali Linux攻防系统(一:攻防系