Linux shell下30個(gè)有趣的命令和提示(推薦)
這些是我收集了多年的Linux shell的30個(gè)有趣的命令和提示。
1. 監(jiān)控命令(每2秒運(yùn)行一次)
watch "ls -larth"
2. 使用一個(gè)端口殺死程序
sudo fuser -k 8000/tcp
3. 限制以下命令的內(nèi)存使用
ulimit -Sv 1000 # 1000 KBs = 1 MB ulimit -Sv unlimited # Remove limit
4. 使用正則表達(dá)式重命名所選文件
rename 's/\.bak$/.txt/' *.bak
5. 獲得完整的文件路徑
readlink -f file.txt
6. 列出tar.gz文件的內(nèi)容,并只提取一個(gè)文件
tar tf file.tgz tar xf file.tgz filename
7. 按照文件大小列出文件
ls -lS
8. 跟蹤路由
mtr google.com
9. 查找文件的提示
find . -size 20c # By file size (20 bytes) find . -name "*.gz" -delete # Delete files find . -exec echo {} \; # One file by line ./file1 ./file2 ./file3 find . -exec echo {} \+ # All in the same line ./file1 ./file2 ./file3
10. 打印無限循環(huán)的文本
yes yes hello
11. 當(dāng)前登錄用戶
w
12. 輸出結(jié)果前置行號(hào)
ls | nl
13. Grep使用Perl風(fēng)格的語法(允許像\t這樣的字符)
grep -P "\t"
14. Cat命令反向輸出(從末端開始)
tac file
15. 檢查每個(gè)目錄中的文件的的權(quán)限
檢測(cè)權(quán)限錯(cuò)誤是很有用的,例如在配置web服務(wù)器時(shí)。
namei -l /path/to/file.txt
16. 每次修改文件時(shí)都會(huì)執(zhí)行命令
while inotifywait -e close_write document.tex do make done
17. 復(fù)制到剪貼板
cat file.txt | xclip -selection clipboard
18. Latex的拼寫和語法檢查
detex file.tex | diction -bs
你可能需要安裝以下內(nèi)容:sudo apt-get install diction texlive-extra-utils。
19. 檢查資源的使用情況
/usr/bin/time -v ls
20. 文件的隨機(jī)行
cat file.txt | sort -R cat file.txt | sort -R | head # Pick a random sambple # Even better (suggested by xearl in Hacker news): shuf file.txt
21. 在離開SSH會(huì)話后保持程序運(yùn)行
如果程序不需要任何交互:
nohup ./script.sh &
如果你需要手動(dòng)輸入一些內(nèi)容,然后離開:
./script.sh <Type any input you want> <Ctrl-Z> # send process to sleep jobs -l # find out the job id disown -h jobid # disown job bg # continue running in the background
當(dāng)然,也可以使用screen或tmux來完成此目的。
22. 在有限的時(shí)間內(nèi)運(yùn)行命令
timeout 10s ./script.sh # Restart every 30 minutes while true; do timeout 30m ./script.sh; done
23. 從兩個(gè)排序文件中合并行
comm file1 file2
打印這三列:
1.行file1獨(dú)有。
2.行file2獨(dú)有。
3.在行file1和行file2中都有。
使用選項(xiàng)-1、-2、-3,可以刪除這些列。
24. 在文件中分割長(zhǎng)文件,使用相同數(shù)量的行
split -l LINES -d file.txt output_prefix
25. 刷新交換分區(qū)
如果一個(gè)程序消耗了太多的內(nèi)存,交換分區(qū)就會(huì)被剩余的內(nèi)存填滿,當(dāng)你回到正常的時(shí)候,一切都是緩慢的。只需重新啟動(dòng)交換分區(qū)來修復(fù)它:
sudo swapoff -a sudo swapon -a
26. 修復(fù)ext4文件系統(tǒng)的superblock問題
sudo fsck.ext4 -f -y /dev/sda1 sudo fsck.ext4 -v /dev/sda1 sudo mke2fs -n /dev/sda1 sudo e2fsck -n <first block number of previous list> /dev/sda1
27. 創(chuàng)建給定大小的空文件
fallocate -l 1G test.img
28. 從命令行操作PDF文件
與join,shuffle,select等命令相比,pdftk是個(gè)更好用的命令:
pdftk *.pdf cat output all.pdf # Join PDFs together pdftk A=in.pdf cat A5 output out.pdf # Extract page from PDF
還可以使用cpdf操作內(nèi)容:
cpdf -draft in.pdf -o out.pdf # Remove images cpdf -blacktext in.pdf -o out.pdf # Convert all text to black color
29. 根據(jù)生成的輸出監(jiān)視進(jìn)度
# Write random data, encode it in base64 and monitor how fast it # is being sent to /dev/null cat /dev/urandom | base64 | pv -lbri2 > /dev/null # pv options: # -l, lines # -b, total counter # -r, show rate
30. 在Ubuntu中找到一個(gè)文件的包
apt-file update apt-file search dir/file.h
總結(jié)
以上所述是小編給大家介紹的Linux shell下30個(gè)有趣的命令和提示,希望對(duì)大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
Shell腳本入門之編寫格式與執(zhí)行方式的實(shí)現(xiàn)
這篇文章主要介紹了Shell腳本入門之編寫格式與執(zhí)行方式的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Shell腳本實(shí)現(xiàn)MySQL、Oracle、PostgreSQL數(shù)據(jù)庫(kù)備份
本文主要介紹了Shell腳本實(shí)現(xiàn)MySQL、Oracle、PostgreSQL數(shù)據(jù)庫(kù)備份,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-02-02Shell腳本實(shí)現(xiàn)的一個(gè)簡(jiǎn)易Web服務(wù)器例子分享
這篇文章主要介紹了Shell腳本實(shí)現(xiàn)的一個(gè)簡(jiǎn)易Web服務(wù)器例子分享,本文實(shí)現(xiàn)的Web服務(wù)器非常簡(jiǎn)單實(shí)用,可以在你不想安裝nginx、apache等大型WEB服務(wù)器時(shí)使用,需要的朋友可以參考下2014-12-12Shell腳本實(shí)現(xiàn)批量下載網(wǎng)絡(luò)圖片代碼分享
這篇文章主要介紹了Shell腳本實(shí)現(xiàn)批量下載網(wǎng)絡(luò)圖片代碼分享,本文基于下載Yahoo天氣圖標(biāo)而寫,圖片地址需有一定的規(guī)則,需要的朋友可以參考下2014-09-09linux 比較兩個(gè)文件夾diff不同 (diff命令, md5列表)
這篇文章主要介紹了linux 比較兩個(gè)文件夾diff不同 (diff命令, md5列表),比較文件夾diff,可以直接使用diff命令,也可以比較文件md5列表,下面通過實(shí)例給大家介紹下,感興趣的朋友跟隨腳本之家小編一起學(xué)習(xí)吧2018-05-05Linux?Shell如何用ssh命令統(tǒng)計(jì)分布式集群信息詳解
作為命令的ssh,作用就是在一臺(tái)linux機(jī)器上去登錄到另一臺(tái)linux機(jī)器,下面這篇文章主要給大家介紹了關(guān)于Linux?Shell如何用ssh命令統(tǒng)計(jì)分布式集群信息的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07