無盡Shell之 shell列印檔案第十行

2021-10-01 22:24:44 字數 804 閱讀 7905

給定乙個文字檔案 file.txt,請只列印這個檔案中的第十行。

示例:假設 file.txt 有如下內容:

line 1

line 2

line 3

line 4

line 5

line 6

line 7

line 8

line 9

line 10

你的指令碼應當顯示第十行:
line 10
說明:

如果檔案少於十行,你應當輸出什麼?

至少有三種不同的解法,請嘗試盡可能多的方法來解題。

題解:awk 'nr == 10' file.txtnr在awk中指行號

sed -n 10p file.txt -n表示只輸出匹配行,p表示print

tail -n +10 file.txt | head -n 1 tail -n +10表示從第10行開始輸出

或者指令碼形式

#/bin/bash

count=

`cat file.txt |

wc -l`

out=

`cat file.txt |

head -10 |

tail -1`if[

$count -lt 10 ]

then

echo

""else

echo

$out

fi

Shell 終端列印

參考書籍 linux shell 指令碼攻略 能夠執行列印的方法有很多,格式也各不相同,主要有如下幾個 echo printf echo命令 echo是用於終端列印的基本命令。預設情況下,echo在每次呼叫後會新增乙個換行符。可使用標誌 n來忽略結尾的換行符。可接受雙引號字串內的轉義序列作為引數,採...

shell學習之 shell呼叫shell

2008 05 06 14 43 18 分類 linux 標籤 字型大小 大中小訂閱 fork是最普通的,就是直接在指令碼裡面用 directory script.sh來呼叫script.sh這個指令碼.執行的時候開乙個sub shell執行呼叫的指令碼,sub shell執行的時候,parent ...

shell 不同顏色列印

shell 指令碼經常要列印資訊,將不同型別的資訊列印為不同顏色,比如錯誤用紅色,正確用綠色等。新建乙個檔案如下 1 2 file echo color.sh 3 4 5 red 033 0 31m 6 blue 033 0 34m 7 cyan 033 0 36m 8 green 033 0 32...