0
k=$1
m=$2
fileName=$3
head -n -$k "$fileName" | tail -n +$m
我有bash代碼。 當我執行它時,它只刪除它應該刪除的內容。例如./strip.sh 4 5 hi.txt > bye.txt
應該刪除前4行和後5行,但它只刪除前4行並保留「4」行。此外,當我執行./strip.sh 1 1 hi.txt > bye.txt
,它只是刪除最後一行,而不是第一行....從流的頭部和尾部刪除指定數量的行
'head -n -N'是「除最後N行外的所有行」。 'tail -n + N'是「從第N行開始」。 –
這與git有什麼關係? – 123
@ 123,大概是OP在Windows上運行它,並使用由git包提供的msys構建的bash。這偶爾是非常偶然的(特定的構建有一些錯誤;例如,流程替換 - 即<()'表達式)無法正常工作),但並不經常。 –