Linux中國

十個鮮為人知的Linux命令 – Part 5

前幾篇文章的地址如下:

42. lsb_release

『lsb_release』 命令會列印特殊發行版的信息。如果 lsb_release 還沒安裝,你可以在基於 Debain 的發行版中用命令 apt 安裝,在基於 Red Hat 系統下用 yum 來安裝包。

# lsb_release -a
LSB Version:    :base-4.0-ia32:base-4.0-noarch:core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:
Distributor ID: CentOS
Description:    CentOS release 6.3 (Final)
Release:        6.3
Codename:       Final

注意:選項『-a』,會顯示有關版本、ID、詳情、發行號研發代號的全部可用信息。

43. nc -zv localhost 80

檢查 80 埠是否被打開。我們可以用任何其他埠號替換『80』來檢查埠是否被打開或關閉。

$ nc -zv localhost 80
Connection to localhost 80 port [tcp/http] succeeded!

(譯註:出現該信息表示80埠已被打開。)

檢查 8080 埠是否啟用

$ nc -zv localhost 8080
nc: connect to localhost port 8080 (tcp) failed: Connection refused

(譯註:該信息顯示了8080埠並未打開。)

44. curl ipinfo.io

該命令會輸出並提供 IP 地址『地理位置』

$ curl ipinfo.io 

"ip": "xx.xx.xx.xx", "hostname": "triband-del-aa.bbb.cc.ddd.bol.net.in", "city": "null", "region": "null", "country": "IN", "loc": "20,77", "org": "AS17813 Mahanagar Telephone Nigam Ltd".

45. find . -user root

該命令會輸出當前目錄下( root )用戶所擁有的文件(譯註:即owner為root)。下面是在當前目錄下列出的所有 『root』用戶擁有的文件。

# find . -user root
./.recently-used.xbel
./.mysql_history
./.aptitude
./.aptitude/config
./.aptitude/cache
./.bluefish
./.bluefish/session-2.0
./.bluefish/autosave
./.bash_history

在當前路徑下列出所有 『avi』 用戶擁有的文件

# find . -user avi
./.cache/chromium/Cache/f_002b66
./.cache/chromium/Cache/f_001719
./.cache/chromium/Cache/f_001262
./.cache/chromium/Cache/f_000544
./.cache/chromium/Cache/f_002e40
./.cache/chromium/Cache/f_00119a
./.cache/chromium/Cache/f_0014fc
./.cache/chromium/Cache/f_001b52
./.cache/chromium/Cache/f_00198d
./.cache/chromium/Cache/f_003680

46. sudo apt-get build-dep ffmpeg

該命令會在相應的包安裝時自動構建依賴關係。因此包安裝的過程將非常流暢,也是非常容易的。

# apt-get build-dep ffmpeg
libxinerama-dev libxml-namespacesupport-perl libxml-sax-expat-perl
libxml-sax-perl libxml-simple-perl libxrandr-dev libxrender-dev
x11proto-render-dev x11proto-xinerama-dev xulrunner-dev
The following packages will be upgraded:
libpixman-1-0

1 upgraded, 143 newly installed, 0 to remove and 6 not upgraded.
Need to get 205 MB of archives.
After this operation, 448 MB of additional disk space will be used.
Do you want to continue [Y/n]?

47. lsof -iTCP:80 -sTCP:LISTEN

該命令會輸出所用正在使用 80 埠的 進程/服務 的名稱。在 80 埠運行下列命令會更好理解這個命令,它會列出所用運行在該埠的 進程/服務

root@localhost:/home/avi# lsof -iTCP:80 -sTCP:LISTEN
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
apache2 1566 root 5u IPv6 5805 0t0 TCP *:www (LISTEN)
apache2 1664 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN)
apache2 1665 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN)
apache2 1666 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN)
apache2 1667 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN)
apache2 1668 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN)

同樣,你可以檢查運行在埠 22 的進程/服務。

root@localhost:/home/avi# lsof -iTCP:22 -sTCP:LISTEN
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 2261 root 3u IPv4 8366 0t0 TCP *:ssh (LISTEN)
sshd 2261 root 4u IPv6 8369 0t0 TCP *:ssh (LISTEN)

48. find -size +100M

這條find命令會在當前目錄下列出所有超過指定大小的文件(這裡指定為100 MB),遞歸查詢。

# find -size +100M
./.local/share/Trash/files/linuxmint-15-cinnamon-dvd-32bit.iso
./Downloads/Fedora-Live-Desktop-i686-19-1.iso
./Downloads/Ant Videos/shakira 2.avi
./Downloads/Deewar.avi
./Desktop/101MSDCF/MOV02224.AVI
./Desktop/101MSDCF/MOV02020.AVI
./Desktop/101MSDCF/MOV00406.MP4
./Desktop/squeeze.iso

在當前目錄遞歸的列出所用大於 1000 MB 的文件。

root@localhost:/home/avi# find -size +1000M
./Downloads/The Dark Knight 2008 hindi BRRip 720p/The Dark Knight.mkv.part
./Downloads/Saudagar - (1991) - DVDRiP - x264 - AAC 5.1 - Chapters - Esubs - [DDR]/Saudagar 
- (1991) - DVDRiP - x264 - AAC 5.1 - Chapters - Esubs - [DDR].mkv
./Downloads/Deewar.avi
./Desktop/squeeze.iso

49. pdftk

pdftk命令用來合併幾個pdf文件。你必須安裝有 pdftk 程序。如果還沒有,請用apt或yum來獲取相應的包。

$ pdftk 1.pdf 2.pdf 3.pdf …. 10.pdf cat output merged.pdf

50. ps -LF -u user_name

該命令會輸出一個用戶的進程和線程。選項「L」(列出線程),選項「-F」(完整格式化)

$ ps -LF -u avi
avi 21645 3717 21766 0 5 66168 117164 1 18:58 ? 00:00:00 /usr/
avi 21645 3717 21768 0 5 66168 117164 1 18:58 ? 00:00:00 /usr/
avi 22314 3717 22314 0 2 42797 50332 0 19:00 ? 00:00:40 /usr/
avi 22314 3717 22316 0 2 42797 50332 1 19:00 ? 00:00:00 /usr/
avi 22678 24621 22678 0 1 969 1060 1 21:05 pts/1 00:00:00 ps -L
avi 23051 3717 23051 0 2 37583 45444 1 19:03 ? 00:00:52 /usr/
avi 23051 3717 23053 0 2 37583 45444 0 19:03 ? 00:00:03 /usr/
avi 23652 1 23652 0 2 22092 12520 0 19:06 ? 00:00:22 gnome
avi 23652 1 23655 0 2 22092 12520 0 19:06 ? 00:00:00 gnome

51. startx - :1

分享 X 會話。如果你需要頻繁的(以不同用戶身份)登入或登出桌面時,那就需要 startx 來救場。這個命令建立了一個新的會話從而避免了在一個會話中反覆的登入和登出。為了在X會話間進行交換,我們可以通過『ctrl+Alt+F7』和『ctrl+Alt+F8』的組合鍵來完成。

注意:快捷鍵「ctrl+Alt+F1~F6「是為了控制台會話準備的,而「ctrl+Alt+F7~F12」則為X會話服務。因此我們有6個控制台會話和6個X會話,不需要頻繁的登入登出。上面的順序適用於大多數的發行版,然而不同發行版可能會有不同的實現。我在Debian中嘗試過,運行的很好。

以上就是今天的所有內容。我們如有需要會在以後的文章中繼續發布「鮮為人知的命令」,不要忘記留下你對我們文章和『 鮮為人知的Linux命令 』系列的寶貴意見。我會很快帶來我的新文章,敬請期待,記得常回來看看哦。

via: http://www.tecmint.com/10-lesser-known-useful-linux-commands-part-v/

譯者:Luoxcat 校對:Caroline

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國