zu formatieren Ich verwende sed
, um aus einer großen Datei zu extrahieren. Die untenstehende scheint die Daten im unten stehenden Format zu extrahieren und von dort bin ich mir nicht sicher, wie ich die Datei säubern soll, um die gewünschte Ausgabe zu sehen. Es gibt wahrscheinlich einen besseren Weg, ich bin mir einfach nicht sicher, wie. Vielen Dank :).sed, um extrahierten Text in Datei
- jede führende Symbol (oder: oder;) entfernt wird, wenn es sich um Text in
$2
- alle Kommata in
$3
sind conveted zu;
$3
hat den weißen Raum vor der Text entfernt vorausgeht
- gibt es 3 tabula~~POS=TRUNC delimeted Felder in der Ausgabe
Datei Leerzeichen getrennte
81201 APC gene analysis; full gene sequence
81210 BRAF , gene analysis, full gene sequence, V600 variant
gewünschte Ausgangs getabulatortrennte
81201 APC gene analysis;full gene sequence
81210 BRAF gene analysis;full gene sequence;V600 variant
Sed
sed -e 's/([^()]*)//g' file.txt | sed '$!N;s/\n/ /' > file
Originaldatei
81201 APC (adenomatous polyposis coli) (eg, familial adenomatosis
polyposis [FAP], attenuated FAP) gene
analysis; full gene sequence
81210 BRAF (B-Raf proto-oncogene, serine/threonine kinase) (eg, colon
cancer), gene analysis, V600 variant(s)
Was sind '$ 2' und' $ 3' in Ihrer Beschreibung? Was soll 's/([^()] *) // g'' in deinen eigenen Worten tun? –
Sind Sie sicher, dass Sie diesen Klammern nicht entgehen möchten? –
'$ 2' ist' APC' und 'BRAF' ....' $ 3' ist 'Genanalyse; vollständige Gensequenz "in Zeile 1 und", Genanalyse, vollständige Gensequenz, V600-Variante "in Zeile 3 ....Beim Erstellen dieser 'Datei' verwende ich' sed -e 's/([^()] *) // g'', um die Klammer zu entfernen und sie dann zu einem 'sed' zu leiten, das alle zwei Zeilen kombiniert. Ich werde die ursprüngliche Datei dem Beitrag hinzufügen. Vielen Dank :). – Chris