真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

linux命令行源代碼 linux源代碼在哪

如何查看Linux命令源代碼

以find命令為例:

專注于為中小企業(yè)提供網(wǎng)站建設(shè)、做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)舟曲免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

第一步,確定命令屬于哪個(gè)rpm包:

#rpm -qf /usr/bin/find

findutils-4.1-34

第二步,查找findutils的源碼包findutils-4.1-34.src.rpm,這個(gè)一般在發(fā)行版的網(wǎng)站上可以找到(比如FC6的源碼在這里可以找到:)。

也可以到rpmfind點(diǎn)虐 上查找,輸入rpm包的名字就可以找到相關(guān)的源碼包,有的也可以得到軟件對(duì)應(yīng)的網(wǎng)站。

第三步,安裝源碼包:

rpm -ivh findutils-4.1-34.src.rpm

安裝好之后可以到/usr/src/RedHat/SOURCE下找到相關(guān)的源碼包

或者直接編譯源碼包:

rpmbuild -bb findutils-4.1-34.src.rpm

如何查看linux命令源代碼

用linux一段時(shí)間了,有時(shí)候想看看ls、cat、more等命令的源代碼,在下載的內(nèi)核源碼中用cscope沒(méi)能找到,在網(wǎng)上搜索了一下,將方 法總結(jié)如下:以搜索ls命令源碼為例,先搜索命令所在包,命令如下:

lpj@lpj-linux:~$ which ls /bin/ls用命令搜索該軟件所在包,代碼如下:

lpj@lpj-linux:~$ dpkg -S /bin/ls coreutils: /bin/ls從上一步中可以知道ls命令的實(shí)現(xiàn)在包c(diǎn)oreutils中,用apt安裝(說(shuō)安裝有些歧義,主要是區(qū)分apt-get -d)該包的源代碼然后解壓,代碼如下:

sudo apt-get source coreutils cd /usr/src/coreutils-XXX #XXX表示版本號(hào) sudo tar zxvf coreutils-XXX.tar.gz 或者只下載源碼,然后手動(dòng)打補(bǔ)丁再解壓,代碼如下:

sudo apt-get -d source coreutils cd /usr/src tar zxvf coreutils-XXX.tar.gz gzip -d coreutils-XXX.diff.gz #這一步會(huì)生成coreutils-XXX.diff文件 patch -p0 coreutils-XXX.diff cd coreutils-XXX tar zxvf coreutils-XXX.tar.gzOK,這幾步執(zhí)行完后,就可以進(jìn)入/usr/src/coreutils-XXX/coreutils-XXX/src中查看各命令對(duì)應(yīng)的源代碼了。

關(guān)于更多Linux的學(xué)習(xí),請(qǐng)查閱書(shū)籍《linux就該這么學(xué)》。

如何獲取Linux中某個(gè)命令的源代碼

用linux一段時(shí)間了,有時(shí)候想看看ls、cat、more等命令的源代碼,在下載的內(nèi)核源碼中用cscope沒(méi)能找到,在網(wǎng)上搜索了一下,將方 法總結(jié)如下:以搜索ls命令源碼為例,先搜索命令所在包,命令如下: lpj@lpj-linux:~$ which ls /bin/ls用命令搜索該軟件所在包,代碼如下: lpj@lpj-linux:~$ dpkg -S /bin/ls coreutils: /bin/ls從上一步中可以知道ls命令的實(shí)現(xiàn)在包c(diǎn)oreutils中,用apt安裝(說(shuō)安裝有些歧義,主要是區(qū)分apt-get -d)該包的源代碼然后解壓,代碼如下: sudo apt-get source coreutils cd /usr/src/coreutils-XXX #XXX表示版本號(hào) sudo tar zxvf coreutils-XXX.tar.gz 或者只下載源碼,然后手動(dòng)打補(bǔ)丁再解壓,代碼如下: sudo apt-get -d source coreutils cd /usr/src tar zxvf coreutils-XXX.tar.gz gzip -d coreutils-XXX.diff.gz #這一步會(huì)生成coreutils-XXX.diff文件 patch -p0 coreutils-XXX.diff cd coreutils-XXX tar zxvf coreutils-XXX.tar.gzOK,這幾步執(zhí)行完后,就可以進(jìn)入/usr/src/coreutils-XXX/coreutils-XXX/src中查看各命令對(duì)應(yīng)的源代碼了

求Linux下命令的源代碼,

1.ash

(1)簡(jiǎn)介

ash --a shell

這是由Kenneth Almquist在1989年編寫(xiě)的,ash是Linux下的許多命令解釋器中的一個(gè),它的許多特性接近于SYSTEM V的shell。

(2)部分參數(shù)說(shuō)明

ash [ -efIijnsxz ] [ +efIijnsxz ] [ -c命令] [ 參數(shù) ]

-c 命令:若用-c參數(shù),則ash從標(biāo)準(zhǔn)輸入中讀入命令(在執(zhí)行完-c帶的命令之后)。

-s:若用-s參數(shù),則ash從標(biāo)準(zhǔn)輸入中讀入命令(在執(zhí)行完-c帶的命令之后)。

如果不跟-c -s參數(shù)則ash以所跟的第一個(gè)參數(shù)為文件名,從此文件中讀入命令。如無(wú)參數(shù)則ash缺省設(shè)定-s參數(shù),從標(biāo)準(zhǔn)輸入中讀入命令,直到輸入exit。

如果參數(shù)0的第一個(gè)字母是"-"則ash確定為login shell,ash將從/etc/profile或用戶的根目錄中的.profile讀入相應(yīng)的設(shè)置和環(huán)境變量。

-e:若用-e參數(shù),則ash執(zhí)行命令后返回值為非零值時(shí)則退出ash。

-f:若用-f參數(shù),則ash關(guān)閉自動(dòng)產(chǎn)生文件名功能。

-j:打開(kāi)伯克利UNIX風(fēng)格的工作控制。

-n:讀入命令但是并不執(zhí)行。

(3)范例

ash -c ls

ash執(zhí)行l(wèi)s這個(gè)命令后退回原先的目錄和shell。

ash -s

ash執(zhí)行一個(gè)新的shell,現(xiàn)在可以在這個(gè)shell中工作,按(Ctrl-D)或輸入exit后,則退回原先的目錄和shell,所設(shè)定的環(huán)境變量返回原先的值。

2.at

(1)簡(jiǎn)介

at,batch,atq,atrm:安排、檢查、刪除隊(duì)列中的工作。

由Thomas Koenig編寫(xiě)。

(2)部分參數(shù)說(shuō)明

at [-V] [-q隊(duì)列] [-f文件名] [-mldbv] 時(shí)間

at -c 作業(yè) [作業(yè)…]

atq [-V] [-q隊(duì)列] [-v]

atrm [-V] 作業(yè) [作業(yè)…]

batch [-V] [-q隊(duì)列] [-f文件名] [-mv] [時(shí)間]

at在設(shè)定的時(shí)間執(zhí)行作業(yè)。

atq列出用戶排在隊(duì)列中的作業(yè),如果是超級(jí)用戶,則列出隊(duì)列中的所有工作。

atrm刪除隊(duì)列中的作業(yè)。

batch用低優(yōu)先級(jí)運(yùn)行作業(yè),只要系統(tǒng)的loadavg(系統(tǒng)平均負(fù)載)1.5(或者在atrun中設(shè)定的值)它就開(kāi)始執(zhí)行作業(yè)。

-V:若用-V參數(shù),則顯示版本號(hào)到標(biāo)準(zhǔn)錯(cuò)誤輸出。

-q隊(duì)列:若用-q參數(shù),則指定可選隊(duì)列名稱,隊(duì)列名稱可以是a到z或A到Z之間的任意字母。at的缺省隊(duì)列名是c,batch的缺省隊(duì)列名是E,隊(duì)列的字母順序越高,則隊(duì)列的優(yōu)先級(jí)越低。如果是大寫(xiě)字母的話則提交給batch,如果atq使用-q參數(shù),則只顯示這個(gè)隊(duì)列中的作業(yè)。

-m:執(zhí)行完作業(yè)后即使此作業(yè)并沒(méi)有輸也給提交作業(yè)的用戶發(fā)送提示mail。

-f文件名:從文件中讀取作業(yè)。

-l:等于atq。

-d:等于atrm。

-b:等于batch。

時(shí)間:這是用戶設(shè)定的作業(yè)開(kāi)始執(zhí)行的時(shí)間。時(shí)間的格式分成三個(gè)部分:時(shí)間、日期、偏移量??山邮艿臅r(shí)間形式是HHMM或HH:MM,在一天中指定的時(shí)間運(yùn)行,如果時(shí)間過(guò)去了就在第二天執(zhí)行??梢栽跁r(shí)間后加入AM或PM使其在上午或下午運(yùn)行,也可以指定在哪一天執(zhí)行,給出日期的格式應(yīng)為MMDDYY或MM/DD/YY或MM.DD.YY,也可以給出偏移量:

時(shí)間+計(jì)數(shù)時(shí)間間隔

時(shí)間間隔可以是minutes,hours,days,weeks。

也可以指定today讓作業(yè)在今天執(zhí)行,指定tommorow讓作業(yè)在明天執(zhí)行。

(3)注意事項(xiàng)

如果沒(méi)有指定-f選項(xiàng),是at從標(biāo)準(zhǔn)輸入讀入所有的命令,所以可以通過(guò)管道、重定向或交互輸入來(lái)輸入命令。

超級(jí)用戶可以在任何情況下使用at系列的命令。一般用戶使用at系列命令的權(quán)利由文件/etc/at.allow,/etc/at.deny控制。如果/etc/at.allow存在,則只有列在這個(gè)文件中的用戶才能使用at系列的命令。如果/etc/at.allow文件不存在,則檢查/etc/at.deny這個(gè)文件。只要不列在這個(gè)文件中的用戶都可以使用at系列的命令。缺省的配置是/etc/at.deny,是一個(gè)空文件,這表明所有的用戶都可以使用at系列的命令。

(4)范例

at -f work 4pm + 3 days

在三天后下午4點(diǎn)執(zhí)行文件work中的作業(yè)。

at -f work 10am Jul 31

在七月31日上午10點(diǎn)執(zhí)行文件work中的作業(yè)。

3.banner

banner:打印大標(biāo)題。

banner在標(biāo)準(zhǔn)輸出上打印高質(zhì)量的標(biāo)題,如果沒(méi)有輸入要打印的文字,則其等待從標(biāo)準(zhǔn)輸入輸入一行文字。其標(biāo)題由"*"組成。由Mark Horton編寫(xiě)。

(2)部分參數(shù)說(shuō)明

/usr/bin/banner [ -wn ]信息

-w寬度 輸出寬度從131到n,n缺省為80列。

(3)注意事項(xiàng)

不能打印字符: ,,[,],\,^,_,{,},|,-。信息長(zhǎng)度為10個(gè)英文字符,如果用空格分開(kāi)字符串,還是連續(xù)打印字符串,兩個(gè)字符串可以被括在引號(hào)(")中。這命名banner把這些字任串置于同一行中。

4.bash

(1)簡(jiǎn)介

bash:GNU Bourne-Again Shell

自由軟件基金會(huì)(Free Software Foundation Inc)擁有bash版權(quán)。

bash是Linux下的許多命令解釋器中的一個(gè),同sh兼容,并且包含了ksh和csh中一些有用的特性。遵從IEEE Posix Shell and Tools specification(IEEE Working Group 1003.2)。


標(biāo)題名稱:linux命令行源代碼 linux源代碼在哪
本文網(wǎng)址:http://weahome.cn/article/ddjhcdd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部