新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > Linux基礎(chǔ)命令之: Linux常用命令

        Linux基礎(chǔ)命令之: Linux常用命令

        作者: 時間:2013-09-13 來源:網(wǎng)絡(luò) 收藏

        本文引用地址:http://www.104case.com/article/257158.htm

        2.patch

        (1)作用。

        命令跟diff配合使用,把生成的補(bǔ)丁文件應(yīng)用到現(xiàn)有代碼上。

        (2)格式。

        patch[選項][待patch的文件[patch文件]]。

        常用的格式為:patch-pnum[patch文件],其中的-pnum是選項參數(shù),在后面會詳細(xì)介紹。

        (3)常見參數(shù)。

        patch主要選項參數(shù)如表2.27所示。

        表2.27 patch命令常見參數(shù)列表

        選項

        參數(shù)含義

        -b

        生成備份文件

        -d

        把dir設(shè)置為解釋補(bǔ)丁文件名的當(dāng)前目錄

        -e

        把輸入的補(bǔ)丁文件看作是ed腳本

        -pnum

        剝離文件名中的前NUM個目錄部分

        -t

        在執(zhí)行過程中不要求任何輸入

        -v

        顯示patch的版本號

        以下對-punm選項進(jìn)行說明。

        首先查看以下示例(對分別位于xc.orig/config/cf/Makefile和xc.bsd/config/cf/Makefile的文件使用patch命令)。

        diff-ruNaxc.orig/config/cf/Makefilexc.bsd/config/cf/Makefile

        以下是patch文件的頭標(biāo)記。

        ---xc.orig/config/cf/Imake.cfFriJul3012:45:471999

        +++xc.new/config/cf/Imake.cfFriJan2113:48:442000

        這個patch如果直接應(yīng)用,那么它會去找“xc.orig/config/cf”目錄下的Makefile文件,假如用戶源碼樹的根目錄是缺省的xc而不是xc.orig,則除了可以把xc.orig移到xc處之外,還有什么簡單的方法應(yīng)用此patch嗎?NUM就是為此而設(shè)的:patch會把目標(biāo)路徑名剝?nèi)UM個“/”,也就是說,在此例中,-p1的結(jié)果是config/cf/Makefile,-p2的結(jié)果是cf/Makefile。因此,在此例中就可以用命令cdxc;patch_p1/pathname/xxx.patch完成操作。

        (4)使用實(shí)例。

        [root@localhostdavid]#diffhello1.chello2.c>hello1.patch

        [root@localhostdavid]#patch./hello1.chello1.patch

        patchingfile./hello1.c

        [root@localhostdavid]#vihello1.c

        #includestdio.h>

        voidmain()

        {

        printf(Hello!Thisisyourhome!n);

        }

        在該實(shí)例中,由于patch文件和源文件在同一目錄下,因此直接給出了目標(biāo)文件的目錄,在應(yīng)用了patch之后,hello1.c的內(nèi)容變?yōu)榱薶ello2.c的內(nèi)容。

        (5)使用說明。

        n 如果patch失敗,patch命令會把成功的patch行補(bǔ)上其差異,同時(無條件)生成備份文件和一個.rej文件。.rej文件里沒有成功提交的patch行,需要手工打上補(bǔ)丁。這種情況在源碼升級的時候有可能會發(fā)生。

        n 在多數(shù)情況下,patch程序可以確定補(bǔ)丁文件的格式,當(dāng)它不能識別時,可以使用-c、-e、-n或者-u選項來指定輸入的補(bǔ)丁文件的格式。由于只有GNUpatch可以創(chuàng)建和讀取新版上下文格式的patch文件,因此,除非能夠確定補(bǔ)丁所面向的只是那些使用GNU工具的用戶,否則應(yīng)該使用舊版上下文格式來生成補(bǔ)丁文件。

        n 為了使patch程序能夠正常工作,需要上下文的行數(shù)至少是2行(即至少是有一處差別的文件)。

        2.1.5網(wǎng)絡(luò)相關(guān)命令

        下網(wǎng)絡(luò)相關(guān)的常見命令如表2.28所示,本書僅以ifconfig和ftp為例進(jìn)行說明。

        表2.28 下網(wǎng)絡(luò)相關(guān)命令

        選項

        參數(shù)含義

        常見選項格式

        netstat

        顯示網(wǎng)絡(luò)連接、路由表和網(wǎng)絡(luò)接口信息

        netstat[-an]

        nslookup

        查詢一臺機(jī)器的IP地址和其對應(yīng)的域名

        nslookup[IP地址/域名]

        finger

        查詢用戶的信息

        finger[選項][使用者][用戶@主機(jī)]

        ping

        用于查看網(wǎng)絡(luò)上的主機(jī)是否在工作

        ping[選項]主機(jī)名/IP地址

        ifconfig

        查看和配置網(wǎng)絡(luò)接口的參數(shù)

        ifconfig[選項][網(wǎng)絡(luò)接口]

        ftp

        利用ftp協(xié)議上傳和下載文件

        在本節(jié)中會詳細(xì)講述

        telnet

        利用telnet協(xié)議訪問主機(jī)

        telent[選項][IP地址/域名]

        ssh

        利用ssh登錄對方主機(jī)

        ssh[選項][IP地址]

        1.ifconfig

        (1)作用。

        用于查看和配置網(wǎng)絡(luò)接口的地址和參數(shù),包括IP地址、網(wǎng)絡(luò)掩碼、廣播地址,它的使用權(quán)限是超級用戶。

        (2)格式。

        ifconfig有兩種使用格式,分別用于查看和更改網(wǎng)絡(luò)接口。

        ①ifconfig[選項][網(wǎng)絡(luò)接口]:用來查看當(dāng)前系統(tǒng)的網(wǎng)絡(luò)配置情況。

        ②ifconfig網(wǎng)絡(luò)接口[選項]地址:用來配置指定接口(如eth0、eth1)的IP地址、網(wǎng)絡(luò)掩碼、廣播地址等。

        (3)常見參數(shù)。

        ifconfig第二種格式的常見選項參數(shù)如表2.29所示。

        表2.29 ftp命令選項的常見參數(shù)列表

        選項

        參數(shù)含義

        -interface

        指定的網(wǎng)絡(luò)接口名,如eth0和eth1

        up

        激活指定的網(wǎng)絡(luò)接口卡

        down

        關(guān)閉指定的網(wǎng)絡(luò)接口

        broadcastaddress

        設(shè)置接口的廣播地址

        pointopoint

        啟用點(diǎn)對點(diǎn)方式

        address

        設(shè)置指定接口設(shè)備的IP地址

        netmaskaddress

        設(shè)置接口的子網(wǎng)掩碼

        (4)使用實(shí)例。

        首先,在本例中使用ifconfig的第一種格式來查看網(wǎng)絡(luò)接口配置情況。

        [root@localhost~]#ifconfig

        eth0Linkencap:EthernetHWaddr00:08:02:E0:C1:8A

        inetaddr:192.168.1.70Bcast:192.168.1.255

        Mask:255.255.255.0

        inet6addr:fe80::208:2ff:fee0:c18a/64Scope:Link

        UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1

        RXpackets:26931errors:0dropped:0overruns:0frame:0

        TXpackets:3209errors:0dropped:0overruns:0carrier:0

        collisions:0txqueuelen:1000

        RXbytes:6669382(6.3MiB)TXbytes:321302(313.7KiB)

        Interrupt:11

        loLinkencap:LocalLoopback

        inetaddr:127.0.0.1Mask:255.0.0.0

        inet6addr:::1/128Scope:Host

        UPLOOPBACKRUNNINGMTU:16436Metric:1

        RXpackets:2537errors:0dropped:0overruns:0frame:0

        TXpackets:2537errors:0dropped:0overruns:0carrier:0

        collisions:0txqueuelen:0

        RXbytes:2093403(1.9MiB)TXbytes:2093403(1.9MiB)

        可以看出,使用ifconfig的顯示結(jié)果中詳細(xì)列出了所有活躍接口的IP地址、硬件地址、廣播地址、子網(wǎng)掩碼、回環(huán)地址等。

        [root@localhostworkplace]#ifconfigeth0

        eth0Linkencap:EthernetHWaddr00:08:02:E0:C1:8A

        inetaddr:192.168.1.70Bcast:192.168.1.255Mask:255.255.255.0

        inet6addr:fe80::208:2ff:fee0:c18a/64Scope:Link

        UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1

        RXpackets:27269errors:0dropped:0overruns:0frame:0

        TXpackets:3212errors:0dropped:0overruns:0carrier:0

        collisions:0txqueuelen:1000

        RXbytes:6698832(6.3MiB)TXbytes:322488(314.9KiB)

        Interrupt:11

        在此例中,通過指定接口顯示出對應(yīng)接口的詳細(xì)信息。另外,用戶還可以通過指定參數(shù)“-a”來查看所有接口(包括非活躍接口)的信息。

        接下來的示例指出了如何使用ifconfig的第二種格式來改變指定接口的網(wǎng)絡(luò)參數(shù)配置。

        [root@localhost~]#ifconfigeth0down

        [root@localhost~]#ifconfig

        loLinkencap:LocalLoopback

        inetaddr:127.0.0.1Mask:255.0.0.0

        inet6addr:::1/128Scope:Host

        UPLOOPBACKRUNNINGMTU:16436Metric:1

        RXpackets:1931errors:0dropped:0overruns:0frame:0

        TXpackets:1931errors:0dropped:0overruns:0carrier:0

        collisions:0txqueuelen:0

        RXbytes:2517080(2.4MiB)TXbytes:2517080(2.4MiB)

        在此例中,通過將指定接口的狀態(tài)設(shè)置為DOWN,暫時停止該接口的工作。

        [root@localhost~]#ifconfigeth0210.25.132.142netmask255.255.255.0

        [root@localhost~]#ifconfig

        eth0Linkencap:EthernetHWaddr00:08:02:E0:C1:8A

        inetaddr:210.25.132.142Bcast:210.25.132.255Mask:255.255.255.0

        inet6addr:fe80::208:2ff:fee0:c18a/64Scope:Link

        UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1

        RXpackets:1722errors:0dropped:0overruns:0frame:0

        TXpackets:5errors:0dropped:0overruns:0carrier:0

        collisions:0txqueuelen:1000

        RXbytes:147382(143.9KiB)TXbytes:398(398.0b)

        Interrupt:11

        從上例可以看出,ifconfig改變了接口eth0的IP地址、子網(wǎng)掩碼等,在之后的ifconfig查看中可以看出確實(shí)發(fā)生了變化。

        (5)使用說明。

        用ifconfig命令配置的網(wǎng)絡(luò)設(shè)備參數(shù)不重啟就可生效,但在機(jī)器重新啟動以后將會失效,除非在網(wǎng)絡(luò)接口配置文件中進(jìn)行修改。

        linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 嘉定区| 梧州市| 佛学| 秦皇岛市| 南宫市| 沙雅县| 商城县| 贵南县| 涞源县| 广水市| 江孜县| 曲麻莱县| 临朐县| 高安市| 上林县| 府谷县| 宁化县| 颍上县| 栖霞市| 原平市| 黄平县| 资中县| 凤凰县| 克什克腾旗| 手游| 永福县| 博客| 临澧县| 文成县| 清涧县| 二连浩特市| 神池县| 昭觉县| 富裕县| 渭南市| 湘西| 元氏县| 阳曲县| 龙井市| 宁陕县| 子长县|