0

同じパターンの段落で構成される .srt ファイルがあります。各ドキュメントの段落の量は異なります。段落の番号を保持し、2 行目に時間を保持し、基本的には「BAROMETER:」とその隣の番号のみを保持します。最後の行も出ることができます。

すべての助けが大歓迎です!

私はMacを実行していますが、automatorまたはその他のプログラムで実行したいと考えています

これは段落が今どのように見えるかです

1
00:00:01,000 --> 00:00:02,000
HOME(11.6488,51.7185) 2016.06.02 13:19:11
GPS(11.6488,51.7185,18) BAROMETER:3.5
ISO:100 Shutter:400 A:63 AA:63 EV: Fnum:6.3 

2
00:00:02,000 --> 00:00:03,000
HOME(11.6488,51.7185) 2016.06.02 13:19:12
GPS(11.6488,51.7185,17) BAROMETER:3.5
ISO:100 Shutter:400 A:63 AA:63 EV: Fnum:6.3 

そして、これは私が彼らが後でどのように見えるかを望む方法です

3
00:00:03,000 --> 00:00:04,000
BAROMETER:4.3

4
00:00:04,000 --> 00:00:05,000
BAROMETER:5.3
4

1 に答える 1

1
grep -oE "^[0-9].*$|^$|BAROMETER.*$" input-file


編集:あなたのコメントに基づいて、フォルダー内のすべてのファイルに対してそれを実行し、その場で置き換えたいと思われます。この場合、 and を使用することをお勧めしますfindsed

find "$@" -type f -name "*.srt" -exec \
    sed -i.bak '/^[0-9]\|BAROMETER\|^$/!d;s/^.*\(BAROMETER\)/\1/' {} \;

Automator を実際に使用したことはありませんが、ドキュメントには非常に詳細な例があります。

于 2016-06-09T19:49:31.117 に答える