使用bash脚本提取文件内容

时间:2016-07-18 14:15:00

标签: bash

我的上一个bash脚本已经很久了。 我只是试图从start变量提取文件的内容到stop。 我的源文件是night4.info,它包含一个.jpg文件列表。该文件的结构类似于:

./2014-11-02/18h/00mn/2014-11-02T18-00-00.048000-depth.jpg
./2014-11-02/18h/00mn/2014-11-02T18-00-00.182000-depth.jpg
./2014-11-02/18h/00mn/2014-11-02T18-00-00.316000-depth.jpg

这是到目前为止的代码:

#! /bin/bash
start=$(grep -n $1 night4.info | cut -d : -f 1)  
stop=$(grep -n  $2 night4.info  | cut -d : -f 1)
echo "1" >> list.info
sed -n -e "$start,$stop p" night4.info >> list.info

这就是我运行脚本的方式:

./script1.sh 2014-11-02T18-00-00.048000 2014-11-03T06-59-59.981000

没有错误消息,代码没有给出正确的输出。

1 个答案:

答案 0 :(得分:1)

您可以使用带有范围运算符的Perl单行程序:

perl -ne "print if /\Q$1\E/../\Q$2\E/" night4.info >> list.info