Dit is de opdracht joinposix 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
join - relationele database-operator
KORTE INHOUD
mee [a bestandsnummer|-v bestandsnummer] [e snaar] [o lijst] [t verkolen]
[-1 veld-] [-2 veld-] file1 file2
PRODUCTBESCHRIJVING
De mee hulpprogramma voert een gelijkheid-join uit op de bestanden file1 en file2. De toegetreden
bestanden worden naar de standaarduitvoer geschreven.
Het join-veld is een veld in elk bestand waarop de bestanden worden vergeleken. De mee utility
schrijft één regel in de uitvoer voor elk paar regels in file1 en file2 die moeten
identieke join-velden. De uitvoerregel bestaat dan standaard uit het join-veld
de resterende velden van file1, dan de resterende velden van file2. Dit formaat kan zijn
gewijzigd met behulp van de o optie (zie hieronder). De a optie kan worden gebruikt om ongeëvenaard toe te voegen
lijnen naar de uitgang. De v optie kan worden gebruikt om alleen ongeëvenaarde regels uit te voeren.
De bestanden file1 en file2 worden geordend in de sorteervolgorde van sorteren b op de
velden waarop ze worden samengevoegd, standaard de eerste in elke regel. Allemaal geselecteerd
uitvoer zal in dezelfde sorteervolgorde worden geschreven.
De standaard scheidingstekens voor invoervelden zijn karakters. In dit geval meerdere
scheidingstekens tellen als één veldscheidingsteken en voorloopscheidingstekens worden genegeerd.
Het standaard uitvoerveldscheidingsteken is a .
Het veldscheidingsteken en de sorteervolgorde kunnen worden gewijzigd met behulp van de t optie (zie
hieronder).
Als dezelfde sleutel meer dan één keer voorkomt in een van beide bestanden, worden alle combinaties van de set van
resterende velden binnen file1 en de set resterende velden in file2 worden uitgevoerd in de volgorde
van de gevonden lijnen.
Als de invoerbestanden niet in de juiste sorteervolgorde staan, zijn de resultaten dat wel
niet gespecificeerd.
OPTIES
De mee hulpprogramma zal voldoen aan het Base Definitions-volume van POSIX.1‐2008, sectie
12.2, utility Syntaxis Richtlijnen.
De volgende opties worden ondersteund:
a bestandsnummer
Produceer een regel voor elke niet-koppelbare regel in het bestand bestandsnummer, Waar bestandsnummer
is 1 of 2, naast de standaarduitvoer. Als beide a1 en a2 zijn gespecificeerd,
alle niet-koppelbare lijnen worden uitgevoerd.
e snaar Vervang lege uitvoervelden in de geselecteerde lijst door o met het touwtje snaar.
o lijst Construeer de uitvoerregel zodat deze de velden bevat die zijn gespecificeerd in lijst, elk element
waarvan een van de volgende twee vormen zal hebben:
1. bestandsnummer.veld, Waar bestandsnummer is een dossiernummer en veld- is een decimaal
geheel getal veldnummer
2. 0 (nul), die het join-veld vertegenwoordigt
De elementen van lijst zal ofwel zijn -gescheiden of - gescheiden, als
gespecificeerd in Richtlijn 8 van het volume Base Definitions van POSIX.1-2008, sectie
12.2, utility Syntaxis Richtlijnen. De velden gespecificeerd door lijst zal worden geschreven
voor alle geselecteerde uitvoerlijnen. Velden geselecteerd door lijst die niet voorkomen in de
invoer wordt behandeld als lege uitvoervelden. (Zie de e optie.) Alleen
specifiek gevraagde velden worden geschreven. De applicatie zorgt ervoor
dat lijst is een enkel commandoregelargument.
t verkolen Gebruik karakter verkolen als separator, voor zowel input als output. Elke verschijning
of verkolen in een lijn zal significant zijn. Wanneer deze optie is opgegeven, wordt de
sorteervolgorde is dezelfde als sorteren zonder de b optie.
v bestandsnummer
Maak in plaats van de standaarduitvoer alleen een lijn voor elke niet-koppelbare lijn in
bestandsnummer, Waar bestandsnummer is 1 of 2. Als beide v1 en v2 zijn gespecificeerd, allemaal
niet-gekoppelde lijnen worden uitgevoerd.
-1 veld- Doe mee op de veld-e veld van bestand 1. Velden zijn decimale gehele getallen beginnend met
1.
-2 veld- Doe mee op de veld-e veld van bestand 2. Velden zijn decimale gehele getallen beginnend met
1.
OPERANDEN
De volgende operanden worden ondersteund:
file1, file2
Een padnaam van een bestand dat moet worden samengevoegd. Als een van de file1 or file2 operanden zijn
'−', wordt in plaats daarvan de standaardinvoer gebruikt.
STDIN
De standaardinvoer wordt alleen gebruikt als de file1 or file2 operand is '−'. Zie de INPUT
BESTANDEN sectie.
INVOER FILES
De invoerbestanden zijn tekstbestanden.
MILIEU VARIABELEN
De volgende omgevingsvariabelen zijn van invloed op de uitvoering van: mee:
TAAL Geef een standaardwaarde op voor de internationaliseringsvariabelen die niet zijn ingesteld of
nul. (Zie het volume Basisdefinities van POSIX.1‐2008, sectie 8.2,
internationalisering Variabelen voor de prioriteit van internationalisering
variabelen die worden gebruikt om de waarden van landinstellingen te bepalen.)
LC_ALL Indien ingesteld op een niet-lege tekenreekswaarde, overschrijf dan de waarden van alle andere
internationaliseringsvariabelen.
LC_COLLATE
Bepaal de locale van de sorteervolgorde mee verwacht gebruikt te zijn
wanneer de invoerbestanden werden gesorteerd.
LC_CTYPE Bepaal de landinstelling voor de interpretatie van reeksen bytes tekstgegevens
als tekens (bijvoorbeeld single-byte in plaats van multi-byte tekens in
argumenten en invoerbestanden).
LC_MESSAGES
Bepaal de landinstelling die moet worden gebruikt om het formaat en de inhoud van te beïnvloeden
diagnostische berichten geschreven naar standaardfout.
NLSPAT Bepaal de locatie van berichtencatalogi voor de verwerking van: LC_MESSAGES.
ASYNCHROON EVENEMENTEN
Standaard.
STDOUT
De mee hulpprogramma-uitvoer is een aaneenschakeling van geselecteerde tekenvelden. Wanneer de
o optie niet gespecificeerd is, zal de uitvoer zijn:
"%s%s%s\n", <mee veld->,anders file1 velden>,
<anders file2 velden>
Als het join-veld niet het eerste veld in een bestand is, wordt hetanders filet velden> voor dat bestand
zal zijn:
<velden voorafgaat mee veld->,velden volgend mee veld->
Wanneer de o optie is opgegeven, is het uitvoerformaat:
"%s\n", <aaneenschakeling of velden>
waarbij de aaneenschakeling van velden wordt beschreven door de o optie, hierboven.
Voor beide indelingen wordt elk veld (behalve het laatste) geschreven met het erachter
scheidingsteken. Als het scheidingsteken de standaardwaarde is ( karakters), een enkele
wordt na elk veld geschreven (behalve het laatste).
STDERR
De standaardfout wordt alleen gebruikt voor diagnostische berichten.
OUTPUT FILES
Geen.
UITGEBREID PRODUCTBESCHRIJVING
Geen.
EXIT STATUS
De volgende exit-waarden worden geretourneerd:
0 Alle invoerbestanden zijn succesvol uitgevoerd.
>0 Er is een fout opgetreden.
GEVOLGEN OF FOUTEN
Standaard.
De volgend secties zijn informatief.
TOEPASSING GEBRUIK
Padnamen bestaande uit numerieke cijfers of uit de vorm tekenreeks.tekenreeks mogen niet
gespecificeerd direct na de o lijst.
Voorbeelden
De o 0-veld selecteert in wezen de vereniging van de join-velden. Bijvoorbeeld gegeven bestand
phone:
!Naam Telefoonnummer Telefoon Nummer
Don +1 123-456-7890
Hal +1 234-567-8901
Yasushi +2 345-678-9012
en bestand fax:
!Naam Fax Telefoon Nummer
Don +1 123-456-7899
Keith +1 456-789-0122
Yasushi +2 345-678-9011
(waarbij de grote uitgestrekte witte ruimte bedoeld is om elk een enkele te vertegenwoordigen ), de
opdracht:
mee t " " a 1 a 2 e '(onbekend)' o 0,1.2,2.2 phone fax
zou produceren:
!Naam Telefoonnummer Telefoon Nummer Fax Telefoon Nummer
Don +1 123-456-7890 +1 123-456-7899
Hal +1 234-567-8901 (onbekend)
Keith (onbekend) +1 456-789-0122
Yasushi +2 345-678-9012 +2 345-678-9011
Meerdere instanties van dezelfde sleutel zullen combinatorische resultaten opleveren. Het volgende:
doet:
a x
a y
a z
fb:
a p
zal produceren:
a x p
a y p
a z p
En het volgende:
doet:
a b c
a d e
fb:
a w x
a y z
a o p
zal produceren:
a b c w x
a b c y z
a b c o p
a d e w x
a d e y z
a d e o p
BEWEEGREDENEN
De e optie is alleen effectief bij gebruik met o omdat, tenzij specifieke velden zijn
geïdentificeerd met behulp van o, mee weet niet welke velden leeg kunnen zijn. De uitzondering op
dit is het join-veld, maar identificeert een leeg join-veld met de e touwtje is dat niet
historische praktijk en sommige scripts zouden kunnen breken als dit zou worden gewijzigd.
Het veld 0 in het o lijst is overgenomen uit de tiende editie van mee Om te voldoen aan
internationale bezwaren die de mee in de basisdocumenten ondersteunt niet de ``full
join'' of 'outer join'' beschreven in literatuur over relationele databases. Hoewel het is geweest
mogelijk om een join-veld op te nemen in de uitvoer (standaard, of op veldnummer met behulp van o),
het join-veld kon niet worden opgenomen voor een ongepaarde lijn geselecteerd door a. De o 0-veld
selecteert in wezen de vereniging van de join-velden.
Dit soort outer join was niet mogelijk met de mee commando's in de basisdocumenten. De
o Het veld 0 is gekozen omdat het een opwaarts compatibele wijziging is voor toepassingen. Een
alternatief werd overwogen: laat het join-veld de vereniging van de velden in de
-bestanden (waarbij ze identiek zijn voor overeenkomende regels, en een of beide null zijn voor niet-overeenkomende
lijnen). Dit werd niet aangenomen omdat het sommige historische toepassingen zou breken.
De mogelijkheid om te specificeren file2 as - is geen historische praktijk; waarvoor het is toegevoegd
volledigheid.
De v optie is geen historische praktijk, maar werd noodzakelijk geacht omdat het
toegestaan het schrijven van Slechts die lijnen die niet overeenkomen op het join-veld, in tegenstelling
aan de a optie, die beide regels afdrukt die wel en niet overeenkomen. Deze extra
faciliteit loopt parallel met de v optie van grep.
Er zijn enkele historische implementaties aangetroffen waarbij een lege regel in een van de
invoerbestanden werden beschouwd als het einde van het bestand; de beschrijving in dit deel van
POSIX.1-2008 noemt dit niet als een toelaatbaar geval.
Eerdere versies van deze norm zijn toegestaan j, −j1, −j2 opties, en een vorm van de o
optie die de lijst optie-argument meerdere argumenten zijn. Deze formulieren zijn nr
langer gespecificeerd door POSIX.1-2008 maar kan aanwezig zijn in sommige implementaties.
TOEKOMST ROUTEBESCHRIJVING
Geen.
Gebruik joinposix online met behulp van onworks.net-services