Bash脚本-从“ c”行显示文件

时间:2019-01-25 10:21:29

标签: linux bash shell

我有一个脚本,显示“ n”行并显示“ c”行。

#!/bin/bash
hn=5
tn=1
while getopts ":n:c:" opt
do
    case $opt in
        h) echo Pomocy
            exit 1
            ;;
        n) hn=$OPTARG ;;
        c) tn=$OPTARG ;;
        \?) echo Nieznana opcja $OPTARG;;
        :) echo Brakuje argumentu opcji $OPTARG ;;
    esac
done

shift $(($OPTIND-1))
for i do
    if [[ -f $1 ]];
    then

        cat $i | head -n $hn
    else
        echo "plik nie istnieje"
    fi
done

exit 0

如何使其从c行显示? 显示“ n”行。用什么命令做“ c”行? 默认情况下显示为1行

感谢您的帮助。这个命令很好用

cat $i |head -n $hn | tail -n +$tn

1 个答案:

答案 0 :(得分:1)

使用tail,wc和awk的简单方法:

lein run

如果我把它放在您的原始文件中:

a=`wc -l $file | awk '{print $1}'`
tail -n $(( a - tn)) $hn