Dit is de opdracht tabmergep die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator
PROGRAMMA:
NAAM
tabmerge - verenig gescheiden bestanden op gemeenschappelijke velden
KORTE INHOUD
tabmerge [actie] [opties] bestand1 bestand2 [...]
Acties:
--min Neem alleen velden die aanwezig zijn in alle bestanden [DEFAULT]
--max Neem alle velden aanwezig
-f|--fields=f1[,f2] Neem alleen de velden genoemd in de
door komma's gescheiden lijst
Opties:
-l|--list Lijst met beschikbare velden
--fs=x Gebruik "x" als het veldscheidingsteken
(standaard is het tabblad "\t")
--rs=x Gebruik "x" als recordscheidingsteken
(standaard is nieuwe regel "\n")
-s|--sort=f1[,f2] Sorteer gegevens ASCII-betisch op veld(en)
--stdout Gegevens afdrukken in origineel gescheiden formaat
(dus niet in tabelformaat)
--help Toon korte hulp en stop
--man Toon volledige documentatie
PRODUCTBESCHRIJVING
Dit programma voegt de velden -- niet de rijen -- van gescheiden tekstbestanden samen. Dat wil zeggen, als
verschillende bestanden zijn bijna maar niet helemaal verschillend van elkaar in hun structuur (in
hun veldnamen, nummers of volgorde), stelt dit script u in staat om de bestanden gemakkelijk te verenigen
in één bestand met allemaal dezelfde velden. De output kan gebaseerd zijn op velden zoals bepaald
door de drie "actie" vlaggen.
Overweeg voor de volgende voorbeelden drie bestanden die de volgende velden bevatten:
+-------------------------------------------------------------+
| Bestand | Velden |
+-------------------------------------------------------------+
| samenvoegen1.tabblad | naam, type, positie |
| merge2.tab | naam, type, positie, lod_score |
| merge3.tab | naam, functie |
+-------------------------------------------------------------+
Om alle beschikbare velden in de bestanden weer te geven en het aantal keren dat ze aanwezig zijn:
$ tabmerge --lijst samenvoegen*
+-----------+-----+
| Veld | Nr. Aanwezige tijden |
+-----------+-----+
| lod_score | 1 |
| naam | 3 |
| positie | 3 |
| typ | 2 |
+-----------+-----+
Om de bestanden samen te voegen op de minimaal overlappende velden:
$ tabmerge samenvoegen*
+----------+----------+
| naam | positie |
+----------+----------+
| RM104 | 2.30 |
| RM105 | 4.5 |
| TX5509 | 10.4 |
| UU189 | 19.0 |
| Xpsm122 | 3.3 |
| Xpsr9556 | 4.5 |
| DRTL | 2.30 |
| ALTX | 4.5 |
| DWRF | 10.4 |
+----------+----------+
Om de bestanden samen te voegen en alle velden op te nemen:
$ tabmerge --max samenvoegen*
+-----------+----------+---------+--------+
| lod_score | naam | positie | typ |
+-----------+----------+---------+--------+
| | RM104 | 2.30 | RFLP |
| | RM105 | 4.5 | RFLP |
| | TX5509 | 10.4 | AFLP |
| 2.4 | UU189 | 19.0 | SSR |
| 1.2 | Xpsm122 | 3.3 | Markering |
| 1.2 | Xpsr9556 | 4.5 | Markering |
| | DRTL | 2.30 | |
| | ALTX | 4.5 | |
| | DWRF | 10.4 | |
+-----------+----------+---------+--------+
Om alleen de velden "naam" en "type" samen te voegen en uit te pakken:
$ tabmerge -f naam,type samenvoegen*
+----------+--------+
| naam | typ |
+----------+--------+
| RM104 | RFLP |
| RM105 | RFLP |
| TX5509 | AFLP |
| UU189 | SSR |
| Xpsm122 | Markering |
| Xpsr9556 | Markering |
| DRTL | |
| ALTX | |
| DWRF | |
+----------+--------+
Om de bestanden samen te voegen op alleen de velden "name" en "lod_score" en op naam te sorteren:
$ tabmerge -f naam,lod_score -s naam samenvoegen*
+----------+----------+
| naam | lod_score |
+----------+----------+
| ALTX | |
| DRTL | |
| DWRF | |
| RM104 | |
| RM105 | |
| TX5509 | |
| UU189 | 2.4 |
| Xpsm122 | 1.2 |
| Xpsr9556 | 1.2 |
+----------+----------+
Om hetzelfde te doen, maar de originele door tabs gescheiden invoer na te bootsen:
$ tabmerge -f naam,lod_score -s naam --stdout merge*
naam lod_score
aLTx
DRTL
DWRF
RM104
RM105
TX5509
UU189 2.4
XPSM122 1.2
Xpsr9556 1.2
Waarom zou je dit willen doen? Stel dat u meerdere tekstbestanden met scheidingstekens hebt met bijna
dezelfde structuur en wilt u er slechts één bestand van maken, maar de velden kunnen in a
verschillende volgorde in elk bestand en/of sommige bestanden kunnen meer of minder velden bevatten dan
anderen. (Hoe vergezocht het ook mag lijken, het overkomt de auteur meer dan hij zou willen.)
Gebruik tabmergep online met onworks.net-services