最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

神奇的shell命令行輸入與輸出功能介紹

 更新時(shí)間:2013年02月28日 11:11:53   作者:  
命令行還是比較常用的,于是我研究了一下shell命令行,在這里拿出來和大家分享一下,希望對(duì)大家有用
標(biāo)準(zhǔn)輸入/輸出和重定向,Linux發(fā)行版Fedora Core Linux,而Red Hat公司原來Red Hat Linux的開發(fā)團(tuán)隊(duì)也將繼續(xù)參與這一發(fā)行版本的開發(fā)工作。

標(biāo)準(zhǔn)輸入與輸出

我們知道,執(zhí)行一個(gè)shell命令行時(shí)通常會(huì)自動(dòng)打開三個(gè)標(biāo)準(zhǔn)文件,即標(biāo)準(zhǔn)輸入文件(stdin),通常對(duì)應(yīng)終端的鍵盤;標(biāo)準(zhǔn)輸出文件(stdout)和標(biāo)準(zhǔn)錯(cuò)誤輸出文件(stderr),這兩個(gè)文件都對(duì)應(yīng)終端的屏幕。進(jìn)程將從標(biāo)準(zhǔn)輸入文件中得到輸入數(shù)據(jù),將正常輸出數(shù)據(jù)輸出到標(biāo)準(zhǔn)輸出文件,而將錯(cuò)誤信息送到標(biāo)準(zhǔn)錯(cuò)誤文件中。
我們以cat命令為例,cat命令的功能是從shell命令行給出的文件中讀取數(shù)據(jù),并將這些數(shù)據(jù)直接送到標(biāo)準(zhǔn)輸出。若使用如下命令:
$ cat config 將會(huì)把文件config的內(nèi)容依次顯示到屏幕上。但是,如果cat的shell命令行中沒有參數(shù),它就會(huì)從標(biāo)準(zhǔn)輸入中讀取數(shù)據(jù),并將其送到標(biāo)準(zhǔn)輸出。例如:
$ cat
Hello world
Hello world
Bye
Bye

用戶輸入的每一行都立刻被cat命令輸出到屏幕上。另一個(gè)例子,命令sort按行讀入文件正文(當(dāng)shell命令行中沒有給出文件名時(shí),表示從標(biāo)準(zhǔn)輸入讀入),將其排序,并將結(jié)果送到標(biāo)準(zhǔn)輸出。下面的例子是從標(biāo)準(zhǔn)輸入讀入一個(gè)采購(gòu)單,并將其排序。
$ sort
bananas
carrots
apples
bananas
carrots

這時(shí)我們?cè)谄聊簧系玫搅艘雅判虻牟少?gòu)單。直接使用標(biāo)準(zhǔn)輸入/輸出文件存在以下問題:輸入數(shù)據(jù)從終端輸入時(shí),用戶費(fèi)了半天勁輸入的數(shù)據(jù)只能用一次。下次再想用這些數(shù)據(jù)時(shí)就得重新輸入。而且在終端上輸入時(shí),若輸入有誤修改起來不是很方便。輸出到終端屏幕上的信息只能看不能動(dòng)。我們無法對(duì)此輸出作更多處理,如將輸出作為另一命令的輸入進(jìn)行進(jìn)一步的處理等。為了解決上述問題,Linux系統(tǒng)為輸入、輸出的傳送引入了另外兩種機(jī)制,即輸入/輸出重定向和管道。

輸入重定向

輸入重定向是指把命令(或可執(zhí)行程序)的標(biāo)準(zhǔn)輸入重定向到指定的文件中。也就是說,輸入可以不來自鍵盤,而來自一個(gè)指定的文件。所以說,輸入重定向主要用于改變一個(gè)命令的輸入源,特別是改變那些需要大量輸入的輸入源。例如,命令wc統(tǒng)計(jì)指定文件包含的行數(shù)、單詞數(shù)和字符數(shù)。如果僅在shell命令行上鍵入:

$wc

wc將等待用戶告訴它統(tǒng)計(jì)什么,這時(shí)shell就好象死了一樣,從鍵盤鍵入的所有文本都出現(xiàn)在屏幕上,但并沒有什么結(jié)果,直至按下<ctrl+d>,wc才將命令結(jié)果寫在屏幕上。如果給出一個(gè)文件名作為wc命令的參數(shù),如下例所示,wc將返回該文件所包含的行數(shù)、單詞數(shù)和字符數(shù)。

$ wc /etc/passwd
20 23 726 /etc/passwd 另一種把/etc/passwd文件內(nèi)容傳給wc命令的方法是重定向wc的輸入。輸入重定向的一般形式為:命令<文件名。可以用下面的命令把wc命令的輸入重定向?yàn)?etc/passwd文件:
$ wc < /etc/passwd
20 23 726

另一種輸入重定向稱為here文檔,它告訴shell當(dāng)前命令的標(biāo)準(zhǔn)輸入來自shell命令行。here文檔的重定向操作符使用<<。它將一對(duì)分隔符(本例中用delim表示)之間的正文重定向輸入給命令。下例將一對(duì)分隔符delim之間的正文作為wc命令的輸入,統(tǒng)計(jì)出正文的行數(shù)、單詞數(shù)和字符數(shù)。
$ wc<>this text forms the content
>of the here document,which
>continues until the end of
>text delimter
>delim

在<<操作符后面,任何字符都可以作為正文開始前的分隔符,本例中使用delim作為分隔符。here文檔的正文一直延續(xù)到遇見另一個(gè)分隔符為止。第二個(gè)分隔符應(yīng)出現(xiàn)在新行的開頭。這時(shí)here文檔的正文(不包括開始和結(jié)束的分隔符)將重新定向送給命令wc作為它的標(biāo)準(zhǔn)輸入。
以上對(duì)shell命令行的使用。

相關(guān)文章

  • 使用Shell腳本批量執(zhí)行SQL腳本

    使用Shell腳本批量執(zhí)行SQL腳本

    這篇文章主要為大家介紹了批量執(zhí)行SQL腳本的Shell腳本的相關(guān)知識(shí)以及注意事項(xiàng),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以參考一下
    2025-01-01
  • Shell實(shí)現(xiàn)猜數(shù)字游戲

    Shell實(shí)現(xiàn)猜數(shù)字游戲

    這篇文章主要為大家詳細(xì)介紹了Shell實(shí)現(xiàn)猜數(shù)字游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • Linux Shell 自動(dòng)交互功能實(shí)現(xiàn)

    Linux Shell 自動(dòng)交互功能實(shí)現(xiàn)

    本文主要介紹了Linux Shell 自動(dòng)交互功能實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 一個(gè)ping檢測(cè)告警函數(shù)代碼

    一個(gè)ping檢測(cè)告警函數(shù)代碼

    一個(gè)ping腳本,服務(wù)器通用告警函數(shù)。在沒有 nagios 的情況下,這個(gè)暫且可以用來作為服務(wù)器告警使用
    2013-02-02
  • Linux實(shí)現(xiàn)文件定期本地備份/異地備份/刪除備份的腳本

    Linux實(shí)現(xiàn)文件定期本地備份/異地備份/刪除備份的腳本

    數(shù)據(jù)備份的意義就在于,當(dāng)受到網(wǎng)絡(luò)攻擊、入侵、電源故障或者操作失誤等事故的發(fā)生后,可以完整、快速、簡(jiǎn)捷、可靠地恢復(fù)原有系統(tǒng)。本文為大家準(zhǔn)備了文件定期本地備份/異地備份/刪除備份的腳本,希望對(duì)你們有所幫助
    2022-10-10
  • Linux shell 提取文件名和目錄名的方法

    Linux shell 提取文件名和目錄名的方法

    這篇文章主要介紹了Linux shell 提取文件名和目錄名的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-02-02
  • 查看Linux系統(tǒng)重啟的四種基本命令詳解

    查看Linux系統(tǒng)重啟的四種基本命令詳解

    Linux 重啟命令是指在Linux系統(tǒng)中,通過指定命令來啟動(dòng)或重啟系統(tǒng),在日常使用中,我們經(jīng)常需要對(duì)系統(tǒng)進(jìn)行重啟操作,如更新軟件、修改系統(tǒng)配置等,因此,熟練掌握Linux重啟命令是非常必要的,所以本文給大家介紹了查看Linux系統(tǒng)重啟的四種基本命令,需要的朋友可以參考下
    2024-04-04
  • Linux使用pidof命令來快速查找進(jìn)程id

    Linux使用pidof命令來快速查找進(jìn)程id

    pidof 是一個(gè)簡(jiǎn)單而強(qiáng)大的命令行工具,廣泛應(yīng)用于進(jìn)程管理和腳本編程中,理解如何有效地使用它可以大大提高你的工作效率,本文給大家介紹了Linux使用pidof命令來快速查找進(jìn)程id的方法,需要的朋友可以參考下
    2025-03-03
  • Linux下Oracle歸檔日志自動(dòng)清理腳本代碼(sh)

    Linux下Oracle歸檔日志自動(dòng)清理腳本代碼(sh)

    將以下代碼保存為.sh文件,并放到crontab里就可以實(shí)現(xiàn)自動(dòng)清理
    2013-01-01
  • linux創(chuàng)建用戶useradd命令代碼示例

    linux創(chuàng)建用戶useradd命令代碼示例

    本文通過代碼示例給大家介紹了adduser與useradd命令二者的關(guān)系 以及使用useradd命令添加用戶的方法,需要的朋友參考下吧
    2017-08-08

最新評(píng)論

定襄县| 乌审旗| 原阳县| 西昌市| 衡东县| 赣州市| 南开区| 玛纳斯县| 建昌县| 张北县| 孝昌县| 许昌市| 石景山区| 如皋市| 甘孜| 定南县| 苏尼特左旗| 巴中市| 汉川市| 江陵县| 隆昌县| 博爱县| 镇远县| 永年县| 青川县| 永寿县| 柘荣县| 夹江县| 麦盖提县| 兴化市| 科技| 临澧县| 娱乐| 衡阳市| 邯郸县| 侯马市| 徐水县| 聂拉木县| 甘孜| 西城区| 六安市|