次のコードは、最初から最後まで入力を押すと逆方向の出力を提供するため、入力を逆にする必要があります。どのように反転または反転できますか?
2019-05-23_07:52:04に修正済み
(printf 'g?%s?m0\n' 0005 0004 0003 0002 0001 ; printf 'wq\n') | ed -s file.txt
しかし、私がやりたいことは次のとおりです。
(printf 'g?%s?m0\n' 0001 0002 0003 0004 0005 ; printf 'wq\n') | ed -s file.txt
そして、次のように上部に出力シーケンスを取得しますfile.txt
。
0001
0002
0003
0004
0005
file.txt
はプレイリストで、ffmpeg
上記のゼロで埋められた数字は、選択されたいくつかのビデオファイル名です。プレイリストにはすでに多くのファイル名/動画があり、コンパイルする前にその一部を一番上に移動したいと思います。ただし、printf
最初から最後まで並べ替える必要がある場合は、コマンドが要求するように逆の順序で入力する必要はありません。
2019-05-23_07:54:27に更新
$ cat file.txt
5575
3585
0004
7774
0003
5385
0001
8658
0002
0005
$ (printf 'g?%s?m0\n' 0001 0002 0003 0004 0005 ; printf 'wq\n') | ed -s file.txt
$ cat file.txt
0005
0004
0003
0002
0001
9374
4845
4834
4883
5848
最後のcat
コマンドと出力順序をメモしてください。
ベストアンサー1
私のアドバイスはうまくいきますが、tac
おそらくあなたはそれをもっと難しくしていると思います。
があり、始めにいくつかの行(たとえば、aの行)をfile.txt
追加したい場合は、単に次のようにします。file.txt
header_file.txt
cat header_file.txt file.txt > new_playlist.txt
そしてやりました。