自定义 lsn 命令, 打印第 n 个文件的内容

lsn:

# add by cw
# aim: print nth file contents

if [ $# -eq 1 ]; then
    xnd=`echo $1'p'`
    nfilename=`ls | sed -n $xnd`
    echo 'filename:'\<$nfilename\>
    if [ -d "$nfilename" ]; then
        echo "is a directory!"
        exit
    fi
    echo '------------- contents: --------------'
    ls | sed -n $xnd | xargs cat

elif [ $# -eq 2 ]; then
    xnd=`echo $2'p'`
    nfilename=`ls $1 | sed -n $xnd`
    echo 'filename:'\<$nfilename\>
    echo '------------- contents: --------------'
    file2=`ls $1 | sed -n $xnd`
    abs_path=`echo $1\/$file2`
    if [ -d "$abs_path" ]; then
        echo "is a directory!"
        exit
    fi
    cat $abs_path
    echo ''

else
    echo "lsn parameter error"
fi



你可能感兴趣的:(系统相关)