ich eine Daten haben, die wie folgt aussieht (lassen Sie uns diese Datei aufrufen submit.txt
):regex Erfassung durchführen und dann ersetzen mit SED/PERL
dir1/pmid_5409464.txt
dir1/pmid_5788247.txt
dir1/pmid_4971884.txt
Was möchte ich tun, ist eine Inline-Datei regex Änderung auszuführen damit ergibt sich folgendes
perl mycode.pl /home/neversaint/dir1/pmid_5409464.txt > /home/neversaint/dir1/pmid_5409464.output
perl mycode.pl/home/neversaint/dir1/pmid_5788247.txt > /home/neversaint/dir1/pmid_5788247.output
perl mycode.pl /home/neversaint/dir1/pmid_4971884.txt > /home/neversaint/dir1/pmid_4971884.output
Gibt es einen SED/Perl One Liner dafür?
Meine Schwierigkeit besteht darin, den Namen der Eingabedatei zu erfassen und dann die Ausgabedatei (.output
) - für jede Zeile - basierend darauf zu erstellen. Ich bin fest mit diesem:
sed 's/^/perl mycode.pl \/home\/neversaint\/dir1\//g' submit.txt |
sed 's/$/ >/'
'awk '{print" xxx/x/y/"$ 0"> xxxxxxxx/$ 0}' Liste> output'? Viel Glück. – shellter
Nein, das wird nicht tun. Der Punkt ist für jede Zeile erfassen die 'pmid_xxx 'from' pmid_xxx.txt' und drucke die Ausgabeversion von 'pmid_xxx.output' auch für jede Zeile. – neversaint
sed http://stackoverflow.com/questions/2777579/how-to-output-only-captured-groups- with-sed –