Linux下必須知道的網(wǎng)絡(luò)命令有哪些
Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計(jì)思想,是一個(gè)性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。在Linux中我們需要用到命令來(lái)實(shí)現(xiàn)各種操作,這篇文章收集了久經(jīng)考驗(yàn)靠譜的命令,也收集了幾個(gè)比較實(shí)用的命令。
方法步驟
1.curl & wget
使用curl或wget命令,不用離開(kāi)終端就可以下載文件。如你用curl,鍵入curl -O后面跟一個(gè)文件路徑。wget則不需要任何選項(xiàng)。下載的文件在當(dāng)前目錄。
復(fù)制代碼代碼如下:
curl -O website.com/file wget website.com/file
curl
2.ping
ping發(fā)送ECHO_REQUEST包到你指定的地址。這樣你可以很方便確認(rèn)你的電腦和Internet或是一個(gè)指定的IP地址是不是通的。使用 -c 開(kāi)關(guān),可以指定發(fā)送ECHO_REQUEST包的個(gè)數(shù)。
復(fù)制代碼代碼如下:
ping -c 4 google.com
ping
3.tracepath & traceroute
tracepath命令和traceroute命令功能類(lèi)似,但不需要root權(quán)限。并且Ubuntu預(yù)裝了這個(gè)命令,traceroute命令沒(méi)有預(yù)裝的。tracepath追蹤出到指定的目的地址的網(wǎng)絡(luò)路徑,并給出在路徑上的每一跳(hop)。如果你的網(wǎng)絡(luò)有問(wèn)題或是慢了,tracepath可以查出網(wǎng)絡(luò)在哪里斷了或是慢了。
復(fù)制代碼代碼如下:
tracepath example.com
tracepath
4.mtr
mtr命令把ping命令和tracepath命令合成了一個(gè)。mtr會(huì)持續(xù)發(fā)包,并顯示每一跳ping所用的時(shí)間。也會(huì)顯示過(guò)程中的任何問(wèn)題,在下面的示例中,可以看到在第6跳丟了超過(guò)20%的包。
復(fù)制代碼代碼如下:
mtr howtogeek.com
mtr
鍵入q或是CTRL + C來(lái)退出命令。
5.host
host命令用來(lái)做DNS查詢。如果命令參數(shù)是域名,命令會(huì)輸出關(guān)聯(lián)的IP;如果命令參數(shù)是IP,命令則輸出關(guān)聯(lián)的域名。
復(fù)制代碼代碼如下:
host howtogeek.com host 208.43.115.82
host
6.whois
whois命令輸出指定站點(diǎn)的whois記錄,可以查看到更多如誰(shuí)注冊(cè)和持有這個(gè)站點(diǎn)這樣的信息。
復(fù)制代碼代碼如下:
whois example.com
whois
7.ifplugstatus
ifplugstatus命令可以告訴你是否有網(wǎng)線插到在網(wǎng)絡(luò)接口上。這個(gè)命令Ubuntu沒(méi)有預(yù)裝,通過(guò)下面的命令來(lái)安裝:
sudo apt-get install ifplugd
這個(gè)命令可以查看所有網(wǎng)絡(luò)接口的狀態(tài),或是指定網(wǎng)絡(luò)接口的狀態(tài):
復(fù)制代碼代碼如下:
ifplugstatus ifplugstatus eth0
ifplugstatus
命令輸出『Link beat detected』(檢測(cè)到連接心跳)表示有網(wǎng)線插著,如沒(méi)有則會(huì)輸出『unplugged』(未插入)。
8.ifconfig
ifconfig用于輸出網(wǎng)絡(luò)接口配置、調(diào)優(yōu)和debug的各種選項(xiàng)??梢钥旖莸夭榭碔P地址和其它網(wǎng)絡(luò)接口的信息。鍵入ifconfig查看所有啟用的網(wǎng)絡(luò)接口的狀態(tài),包括它們的名字。可以指定網(wǎng)絡(luò)接口的名字來(lái)只顯示這一個(gè)接口的信息。
復(fù)制代碼代碼如下:
ifconfig ifconfig eth0
ifconfig
7.ifdown & ifup
ifdown和ifup命令和運(yùn)行ifconfig up,ifconfig down的功能一樣。給定網(wǎng)絡(luò)接口的名字可以只禁用或啟用這一個(gè)接口。需要root權(quán)限,所以在Ubuntu上需要使用sudo來(lái)運(yùn)行。
復(fù)制代碼代碼如下:
sudo ifdown eth0 sudo ifup eth0
ifdown-ifup
在Linux桌面系統(tǒng)上運(yùn)行這2個(gè)命令,很可能會(huì)輸出出錯(cuò)信息。Linux桌面通過(guò)使用網(wǎng)絡(luò)管理器(NetworkManager)來(lái)管理你的網(wǎng)絡(luò)接口。不過(guò)在沒(méi)有安裝網(wǎng)絡(luò)管理器的服務(wù)器版上,這2個(gè)命令仍然可用。
如果確實(shí)要在命令行上配置網(wǎng)絡(luò)管理器,用nmcli命令。
10.dhclient
dhclient命令可以釋放你的電腦的IP地址并從DHCP服務(wù)器上獲得一個(gè)新的。需要root權(quán)限,所以在Ubuntu上需要sudo。無(wú)選項(xiàng)運(yùn)行命令獲取新IP,或指定 -r 開(kāi)關(guān)來(lái)釋放當(dāng)前的IP地址。
sudo dhclient -r sudo dhclient
dhclient
11.netstat
netstat命令可以顯示網(wǎng)絡(luò)接口的很多統(tǒng)計(jì)信息,包括打開(kāi)的socket和路由表。無(wú)選項(xiàng)運(yùn)行命令顯示打開(kāi)的socket。
netstat
這條命令還有很多功能。比如,netstat -p命令可以顯示打開(kāi)的socket對(duì)應(yīng)的程序。
netstat-p
netstat -s則顯示所有端口的詳細(xì)統(tǒng)計(jì)信息。
netstat-s
補(bǔ)充:Linux基本命令
?、賚s 意為list 列出當(dāng)前文件夾中的文件
-l 顯示文件的屬性 可用ll來(lái)表示
②alias 別名 看看是否有別名的文件
?、踓d dir 跳躍目錄 -P選項(xiàng) 將路徑中的鏈接文件替換成鏈接指向的文件路徑
?、躳wd 查看當(dāng)前工作的文件夾名 使用-P的選項(xiàng),會(huì)直接進(jìn)入到其中,相當(dāng)于cd
相關(guān)閱讀:Linuxshell腳本不執(zhí)行問(wèn)題實(shí)例分析
shell腳本不執(zhí)行問(wèn)題:某天研發(fā)某同事找我說(shuō)幫他看看他寫(xiě)的shell腳本,死活不執(zhí)行,報(bào)錯(cuò)。我看了下,腳本很簡(jiǎn)單,也沒(méi)有常規(guī)性的錯(cuò)誤,報(bào)“:badinterpreter:Nosuchfileordirectory”錯(cuò)??催@錯(cuò),我就問(wèn)他是不是在windows下編寫(xiě)的腳本,然后在上傳到linux服務(wù)器的……果然。原因:在DOS/windows里,文本文件的換行符為rn,而在*nix系統(tǒng)里則為n,所以DOS/Windows里編輯過(guò)的文本文件到了*nix里,每一行都多了個(gè)^M。解決:
1)重新在linux下編寫(xiě)腳本;
2)vi:%s/r//g:%s/^M//g(^M輸入用Ctrl+v,Ctrl+m)附:sh-x腳本文件名,可以單步執(zhí)行并回顯結(jié)果,有助于排查復(fù)雜腳本問(wèn)題。
Linux命令相關(guān)文章: