het EngelsFransSpaans

Servers draaien | Ubuntu > | Fedora > |


OnWorks-favicon

mhbuildmh - Online in de cloud

Voer mhbuildmh uit in OnWorks gratis hostingprovider via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdracht mhbuildmh 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


mhbuild - vertaal MIME-compositieconcept

KORTE INHOUD


mhbuild filet [-zelf | -noauto] [-lijst | -nolist] [-realize | -normale grootte] [-koppen |
-noheaders] [-richtlijnen | -geen richtlijnen] [-rfc934-modus | -norfc934modus] [-contentid |
-nocontentid] [-uitgebreid | -noverbose] [-dispositie | -nodispositie] [-controleren |
-geen check] [-headerencodering coderingsalgoritme | -autoheaderencodering] [-maxunencoded
lijnlengte] [-dist] [-versie] [-Help]

PRODUCTBESCHRIJVING


Het mhbuild commando vertaalt een MIME-compositieconcept naar een geldig MIME-bericht.

mhbuild creëert multimediaberichten zoals gespecificeerd in RFC 2045 tot RFC 2049. Dit omvat:
de codering van berichtkoppen zoals gespecificeerd door RFC 2047, en de codering van MIME
parameters zoals gespecificeerd in RFC 2231.

Als u de naam van het compositiebestand opgeeft als “-”, dan mhbuild zal de accepteren
compositieconcept op de standaardinvoer. Als de vertaling van deze invoer is gelukt,
mhbuild zal het nieuwe MIME-bericht naar de standaarduitvoer uitvoeren. Dit argument moet zijn:
het laatste argument op de opdrachtregel.

Anders als het bestandsargument to mhbuild is de naam van een geldig compositiebestand, en de
vertaling is gelukt, mhbuild zal het originele bestand vervangen door de nieuwe MIME
bericht. Het zal het originele bestand hernoemen om te beginnen met het teken "," en eindigen met
de tekenreeks ".orig", bijv. als u het bestand "concept" aan het bewerken bent, wordt het hernoemd naar
“,concept.orig”. Hiermee kunt u gemakkelijk de mhbuild Invoer bestand.

Listing het Inhoud
Het -lijst schakelaar vertelt mhbuild om de inhoudsopgave weer te geven die is gekoppeld aan de MIME
bericht dat wordt aangemaakt.

Het -koppen schakelaar geeft aan dat een banner van één regel moet worden weergegeven boven de
lijst. De -realize schakelaar vertelt mhbuild om het “native” (gedecodeerde) formaat van . te evalueren
elke inhoud voorafgaand aan de aanbieding. Dit zorgt voor een nauwkeurige telling ten koste van een kleine
vertraging. Als de -uitgebreid schakelaar aanwezig is, dan zal de lijst elke "extra" tonen
informatie die aanwezig is in het bericht, zoals opmerkingen in de kop "Content-Type".

Indien de -dispositie schakelaar aanwezig is, dan zal de lijst alle relevante informatie tonen
uit de kop "Content-Disposition".

Vereenvoudigd Gehechtheid Interface
Voor gebruikers die eenvoudig bestanden aan tekstinhoud willen toevoegen, mhbuild zal het scannen
compositiebestand voor "Attach" headers. Een “Attach” header bevat een bestandsnaam die zal
worden toegevoegd aan het bericht met behulp van normale MIME-inkapselingsregels. Eén bestandsnaam is toegestaan
per "Attach"-header, maar meerdere "Attach"-headers zijn toegestaan ​​in het compositiebestand.

Deze bestanden worden toegevoegd na alle andere MIME-inhoud, inclusief alle gespecificeerde inhoud
by mhbuild richtlijnen (zie hieronder). Zien sturen(1) voor meer details.

vertalen het Samenstelling Dien in
mhbuild is in wezen een filter om te helpen bij de samenstelling van MIME-berichten. mhbuild wil
converteer een mhbuild "compositiebestand" in een geldig MIME-bericht. EEN mhbuild "samenstelling
bestand" is gewoon een bestand met platte tekst die wordt afgewisseld met verschillende mhbuild
richtlijnen. Wanneer dit bestand wordt verwerkt door mhbuild, zullen de verschillende richtlijnen
uitgebreid naar de juiste inhoud, en zal worden gecodeerd volgens de MIME-normen.
Het resulterende MIME-bericht kan vervolgens per e-mail worden verzonden.

De formele syntaxis voor a mhbuild compositiebestand is gedefinieerd aan het einde van dit document,
maar de ideeën achter dit formaat zijn niet ingewikkeld. Kortom, het lichaam bevat één of
meer inhoud. Een inhoud bestaat uit ofwel een richtlijn, aangegeven met een "#" als de
eerste teken van een regel; of, platte tekst (een of meer regels tekst). het vervolg
teken, "\", kan worden gebruikt om een ​​enkele instructie op meer dan één regel in te voeren, bijv.

#afbeelding/png \
/home/foobar/junk/picture.png

Er zijn vijf soorten richtlijnen: "type" -richtlijnen, die het type en subtype van
de inhoud; “externe-type” richtlijnen, die ook het type en subtype van de
inhoud; de "message" -richtlijn (#forw), die wordt gebruikt om een ​​of meer berichten door te sturen;
de "begin" -richtlijn (#begin), die wordt gebruikt om een ​​meerdelige inhoud te maken; en de
"on/off/pop"-richtlijnen (#on, #off, #pop) die bepalen of andere richtlijnen zijn
helemaal vereerd.

Het -richtlijnen schakelaar geeft controle over of mhbuild een van de
“#”-richtlijnen. Dit kan ook worden beïnvloed met de #on of #off richtlijnen, en #pop,
die de verwerkingsstatus herstelt naar die voorafgaand aan de meest recente #aan of #uit.
(De richtlijnen #on, #off en #pop worden natuurlijk altijd gerespecteerd.) Dit maakt opname mogelijk
van platte tekst die eruitziet als mhbuild-richtlijnen, zonder fouten te veroorzaken:

#uit
# omvat
printf("Hallo wereld!);
#knal

Momenteel is de stapeldiepte voor de #on/off/pop-richtlijnen 32.

De richtlijn "type" wordt gebruikt om het type en subtype van een inhoud rechtstreeks te specificeren. Jij
mag op deze manier alleen discrete typen specificeren (kan de typen multipart of niet specificeren)
bericht met deze richtlijn). U kunt desgewenst de naam opgeven van een bestand met:
de inhoud in “native” (gedecodeerd) formaat. Als deze bestandsnaam begint met de “|”
karakter, dan vertegenwoordigt het een uit te voeren opdracht waarvan de uitvoer dienovereenkomstig wordt vastgelegd.
Bijvoorbeeld

#audio/basic |raw2audio -F < /usr/lib/sound/giggle.au

Als er geen bestandsnaam is opgegeven, mhbuild zoekt informatie in het profiel van de gebruiker om
bepalen hoe de verschillende inhoud moet worden samengesteld. Dit wordt bereikt door
een compositiereeks raadplegen en uitvoeren onder / Bin / sh, met de standaard output
ingesteld op de inhoud. Als de -uitgebreid schakelaar wordt gegeven, mhbuild zal alle commando's herhalen die
worden gebruikt om op deze manier inhoud te maken.

De compositietekenreeks kan de volgende escapes bevatten:

%a Parameters uit richtlijn invoegen
%f Bestandsnaam met inhoud invoegen
%F %f, en stdout wordt niet omgeleid
%s Inhoudssubtype invoegen
%% Teken invoegen %

Eerste, mhbuild zal zoeken naar een invoer van het formulier:

mhbuild-compose- /

om de opdracht te bepalen die moet worden gebruikt om de inhoud samen te stellen. Als dit niet wordt gevonden, mhbuild wil
zoek naar een invoer van het formulier:

mhbuild-compose-

om het compositiecommando te bepalen. Als dit niet wordt gevonden, mhbuild zal klagen.

Een voorbeelditem kan zijn:

mhbuild-compose-audio/basic: opnemen | raw2audio -F

Omdat commando's zoals deze zullen variëren, afhankelijk van de weergave-omgeving die wordt gebruikt voor
login, compositiestrings voor verschillende inhoud moeten waarschijnlijk in het bestand worden geplaatst
gespecificeerd door de $MHBUILD omgevingsvariabele, in plaats van rechtstreeks in uw gebruikersprofiel.

De richtlijnen van het "externe type" worden gebruikt om een ​​MIME-referentie naar een inhoud te geven, in plaats van:
dan de inhoud zelf insluiten (bijvoorbeeld door een ftp-site op te geven). Vandaar,
in plaats van een bestandsnaam op te geven zoals bij de typerichtlijnen, zijn externe parameters
geleverd. Deze zien eruit als normale parameters, dus ze moeten dienovereenkomstig worden gescheiden. Voor
voorbeeld,

#@applicatie/octet-stream; \
type=teer; \
conversies=comprimeren \
[dit is de nmh-verdeling] \
{hechting; bestandsnaam="nmh.tar.gz"} \
naam="nmh.tar.gz"; \
directory="/pub/nmh"; \
site="ftp.math.gatech.edu"; \
toegangstype=anon-ftp; \
modus = "afbeelding"

U moet een beschrijvingsreeks opgeven om de inhoudsparameters te scheiden van de externe-
parameters (hoewel deze string leeg kan zijn). Deze beschrijvingsreeks wordt gespecificeerd door
het insluiten tussen "[]". Een disposition string, om te verschijnen in een "Content-Disposition"
header, kan verschijnen in de optionele “{}”.

Deze parameters hebben de vorm:

toegangstype = meestal anon-ftp, mail serverof url
naam= bestandsnaam
toestemming = alleen-lezen of lezen-schrijven
site= hostnaam
directory= directorynaam (optioneel)
modus = meestal ascii or beeld (Optioneel)
grootte = aantal octetten
server= mailbox
onderwerp = onderwerp om te verzenden
body= commando om te verzenden om op te halen
url= URL van inhoud

Een minimale richtlijn van het "externe type" voor de url Toegangstype zou als volgt zijn:

#@application/octet-stream [] access-type=url; \
url="http://download.savannah.gnu.org/releases/nmh/nmh-1.5.tar.gz"

Alle lange URL's worden verpakt volgens de RFC 2231-regels.

De instructie "message" (#forw) wordt gebruikt om een ​​bericht of een groep berichten te specificeren
erbij betrekken. U kunt optioneel de naam van de map specificeren en welke berichten moeten worden
doorgestuurd. Als er geen map is opgegeven, wordt deze standaard ingesteld op de huidige map. Evenzo, als een
bericht niet wordt gegeven, wordt standaard het huidige bericht weergegeven. Daarom is de berichtrichtlijn:
Vergelijkbaar met de voorw commando, behalve dat de eerste de MIME-regels gebruikt voor inkapseling
in plaats van die gespecificeerd in RFC 934. Bijvoorbeeld,

#forw +inbox 42 43 99

Als u een enkel bericht opneemt, wordt het direct opgenomen als inhoud van het type
"bericht/rfc822". Als u meer dan één bericht opneemt, dan mhbuild zal een inhoud toevoegen
van het type "multipart/digest" en neem elk bericht op als een subonderdeel van deze inhoud.

Als u deze instructie gebruikt om meer dan één bericht op te nemen, kunt u de
-rfc934-modus schakelaar. Deze schakelaar geeft aan dat: mhbuild moet proberen gebruik te maken van de
MIME-inkapselingsregels op zo'n manier dat de "multipart/digest" die wordt gemaakt is
(meestal) compatibel met de inkapseling gespecificeerd in RFC 934. Indien gegeven, dan RFC 934
compatibele user-agents zouden het bericht bij ontvangst moeten kunnen barsten - op voorwaarde dat:
de berichten die worden ingekapseld bevatten zelf geen ingekapselde berichten. De
nadeel van deze aanpak is dat de inkapselingen worden gegenereerd door het plaatsen van een extra
nieuwe regel aan het einde van de hoofdtekst van elk bericht.

De "begin" -richtlijn wordt gebruikt om een ​​meerdelige inhoud te maken. Bij gebruik van de "begin"
richtlijn, moet u ten minste één inhoud tussen de begin- en eindparen specificeren.

#beginnen
Dit wordt een multipart met slechts één deel.
#einde

Als u meerdere richtlijnen gebruikt in een samenstellingsconcept, mhbuild automatisch
ze inkapselen in een meerdelige inhoud. Daarom is de "begin" -richtlijn alleen:
nodig als u geneste meerdelige delen wilt gebruiken, of een meerdelige bericht wilt maken met:
slechts een deel.

Voor al deze richtlijnen kan de gebruiker een korte beschrijving van de inhoud opnemen
tussen het teken "[" en het teken "]". Deze beschrijving wordt gekopieerd naar de
Koptekst "Content-Description" wanneer de richtlijn wordt verwerkt.

#forw [belangrijke mail van Bob] +bob 1 2 3 4 5

Evenzo kan optioneel een dispositiereeks worden verschaft tussen de tekens "{" en "}";
het wordt gekopieerd naar de kop "Content-Disposition" wanneer de richtlijn wordt verwerkt.
Als er een dispositietekenreeks is opgegeven die geen bestandsnaamparameter bevat, en a
bestandsnaam is opgegeven in de richtlijn, wordt deze toegevoegd aan de "Content-Disposition"
kop. Bijvoorbeeld de volgende richtlijn:

#tekst/gewoon; charset=iso-8859-1 <>{bijlage} /tmp/summary.txt

maakt deze berichtgedeeltekoppen:

Inhoudstype: tekst/plat; charset="iso-8859-1"
Content-Disposition: bijlage; bestandsnaam="samenvatting.txt"

Standaard mhbuild genereert een unieke "Content-ID:" voor elke richtlijn, overeenkomend met
naar elk berichtgedeelte; de gebruiker kan dit echter negeren door de ID te definiëren met behulp van de "<"
en ">" tekens. De -nocontentid schakelaar onderdrukt het maken van alle "Content-ID:"
headers, zelfs in het bovenste niveau van het bericht.

Normaal mhbuild zal een geschikte Content-Transfer-Encoding kiezen op basis van de inhoud
en het MIME-inhoudstype. U kunt dat echter in een mhbuild richtlijn door
met vermelding van “*” en de codering. Aanvaardbare coderingswaarden zijn "8bit", "qpρq (for
quoted-printable) en "b64" (voor base64-codering). Opgemerkt moet worden dat ongewenste
resultaten kunnen optreden als 8bit of quoted-printable is geselecteerd voor binaire inhoud, vanwege de
vertaling tussen Unix-regeleinden en de regeleinden die door het posttransport worden gebruikt
systeem.

Naast de verschillende richtlijnen kan leesbare tekst aanwezig zijn. Platte tekst wordt verzameld,
totdat er een richtlijn is gevonden of het ontwerp is uitgeput, en dit is gemaakt om een ​​tekst te vormen
inhoud. Als de leesbare tekst een "#" aan het begin van een regel moet bevatten, verdubbel dan gewoon
het, bijv.

##wanneer verzonden, begint deze regel met slechts één #

Als u de leesbare tekst wilt beëindigen voorafgaand aan een richtlijn, bijvoorbeeld om twee leesbare tekst
inhoud aangrenzend, voegt u eenvoudig een regel in die een enkel "#" teken bevat, bijv.

dit is de eerste inhoud
#
en dit is de tweede

Ten slotte, als de leesbare tekst begint met een regel van het formulier:

Inhoud-beschrijving: tekst

dan zal dit worden gebruikt om de platte tekst inhoud te beschrijven. U MOET deze regel volgen met
een lege regel voordat u uw tekst begint.

Standaard wordt platte tekst vastgelegd als tekst/platte inhoud. U kunt dit overschrijven door:
de leesbare tekst beginnen met "#<" gevolgd door een specificatie van het inhoudstype. Bijvoorbeeld,
bv

#
deze inhoud wordt getagd als tekst/verrijkt
#
en deze inhoud wordt getagd als tekst/plat
#
#
en deze inhoud wordt getagd als application/x-patch

Merk op dat als u het "#<" platte tekst-formulier gebruikt, de inhoudsbeschrijving op de . moet staan
dezelfde regel die het inhoudstype van de leesbare tekst identificeert.

Bij het samenstellen van een tekstinhoud kunt u de relevante tekenset aangeven door de
parameter "charset" toe aan de richtlijn.

#

Als een tekstinhoud 8-bits tekens bevat (tekens met de hoge bitset) en de
tekenset is niet gespecificeerd zoals hierboven, dan mhbuild gaat ervan uit dat de tekenset van is
het type gegeven door de norm lokaal(1) omgevingsvariabelen. Als deze omgeving
variabelen niet zijn ingesteld, wordt de tekenset gelabeld als "x-unknown".

Als een tekstinhoud alleen 7-bits tekens bevat en de tekenset niet is gespecificeerd als
hierboven, dan wordt de tekenset gelabeld als "us-ascii".

Standaard wordt tekstinhoud met de hoge bitset gecodeerd met een 8bit
Inhoud-overdracht-codering. Als de tekst regels heeft die langer zijn dan de waarde van -maxunencoded
(standaard 78), dan wordt de tekst gecodeerd met behulp van de aanhalingstekens-afdrukbare codering.

Het -headerencodering schakelaar geeft aan welk algoritme moet worden gebruikt bij het coderen van een bericht
headers die 8-bits tekens bevatten. De geldige argumenten zijn: base64 voor gebaseerd-64
codering en geciteerd voor geciteerde afdrukbare codering. De -autoheaderencodering schakelaar zal
instrueren mhbuild om automatisch het algoritme te kiezen dat resulteert in een kortere gecodeerde
string.

Dit alles bij elkaar, hier is een voorbeeld van een ingewikkelder berichtconcept. De
volgende concept zal uitgroeien tot een meerdelig/gemengd bericht met vijf delen:

aan: niemand@nergens.org
cc:
Onderwerp: Kijk en luister naar mij!
--------
Het eerste deel is tekst/plat
#
Het tweede deel zal tekst/verrijkt zijn
#
Dit derde deel zal tekst/plat zijn
#audio/basic [dom gegiechel] \
|raw2audio -F < /usr/lib/sounds/giggle.au
#image/gif [foto van foobar] \
/home/foobar/lib/picture.gif

Integriteit Check
If mhbuild krijgt de -controleren switch, dan zal het ook een integriteitscontrole associëren met
elke "blad" inhoud. Hiermee wordt een koptekstveld Content-MD5 aan de inhoud toegevoegd, samen met:
de md5-som van de ongecodeerde inhoud, volgens RFC 1864. Dit kan worden gebruikt door de ontvanger van
het bericht om te controleren of de inhoud van het bericht tijdens het transport niet is gewijzigd.

Overdracht coderingen
Na mhbuild construeert het nieuwe MIME-bericht door instructies te ontleden, inclusief bestanden,
enz., scant het de inhoud van het bericht om te bepalen welke overdrachtcodering moet worden gebruikt.
Het controleert op 8-bits gegevens, lange regels, spaties aan het einde van regels en botsingen met
meerdelige grenzen. Het zal dan een overdrachtscodering kiezen die geschikt is voor elk
inhoudstype.

Als aan elke inhoud een integriteitscontrole wordt gekoppeld met behulp van de -controleren schakelaar,
harte mhbuild zal elke inhoud coderen met een overdrachtcodering, zelfs de inhoud
bevat alleen 7-bits gegevens. Dit is om de kans te vergroten dat de inhoud dat niet is
veranderd tijdens transport.

Het aanroepen mhbuild
Typisch, mhbuild wordt aangeroepen door de wat nu programma. Dit commando verwacht het lichaam
van het concept dat moet worden opgemaakt als een mhbuild compositie bestand. Als je dit eenmaal hebt samengesteld
invoerbestand met een commando als herunterladen, antwoordof voorw, jij roept mhbuild bij de “Wat?
nu” prompt met

Wat nu? mime

alvorens het concept te verzenden. Dit zal ervoor zorgen dat wat nu uitvoeren mhbuild vertalen van de
compositiebestand in MIME-formaat.

Normaal gesproken is het een fout om aan te roepen mhbuild in een bestand dat al in MIME-formaat is. De -zelf
schakelaar zal veroorzaken: mhbuild om zonder fouten af ​​te sluiten als het invoerbestand al geldige MIME heeft
koppen. Het gebruik van -zelf maakt ook de -geen richtlijnen schakelaar.

Ten slotte zou u moeten overwegen om deze regel aan uw profiel toe te voegen:

lproc: toon

Op deze manier, als u besluit om lijst na het aanroepen van nabootsen, het bevel

Wat nu? lijst

zal werken zoals u verwacht.

Het -dist schakelaar is bedoeld om te worden gebruikt door: dist. Het zorgt ervoor dat mhbuild niet genereert
eventuele MIME-headers in het compositiebestand (zoals “MIME-Version” of “Content-Type”), maar
het zal nog steeds berichtkoppen coderen volgens RFC 2047.

Gebruiker Leefomgeving
Omdat de omgeving waarin mhbuild werkt, kan per gebruiker verschillen, mhbuild eruit zal zien
voor de omgevingsvariabele $MHBUILD. Indien aanwezig, specificeert dit de naam van een
extra gebruikersprofiel dat moet worden gelezen. Dus wanneer een gebruiker inlogt op een bepaalde
machine, moet deze omgevingsvariabele worden ingesteld om te verwijzen naar een bestand met definities
handig voor die machine.

Tenslotte mhbuild zal proberen te overleggen

/etc/nmh/mhn.defaults

als het bestaat.

Zie "Profiel opzoeken" in mh-profiel(5) voor de zoekvolgorde van het profiel en voor hoe duplicaat
aanmeldingen worden behandeld.

Syntaxis of Samenstelling bestanden
Het volgende is de formele syntaxis van a mhbuild "compositiebestand".

lichaam ::= 1*(inhoud | EOL)

inhoud ::= richtlijn | platte tekst

richtlijn ::= "#" type "/" subtype
0*(";" kenmerk "=" waarde)
[ "(" opmerking ")" ]
[ "<" id ">" ]
[ "[" Omschrijving "]" ]
[ "{" beschikking "}" ]
[ "*8bit" | "*qp" | "*b64" ]
[ bestandsnaam ]
EOL

| "#@" typ "/" subtype
0*(";" kenmerk "=" waarde)
[ "(" opmerking ")" ]
[ "<" id ">" ]
[ "[" Omschrijving "]" ]
[ "{" beschikking "}" ]
[ "*8bit" | "*qp" | "*b64" ]
externe parameters
EOL

| "#vooruit"
[ "<" id ">" ]
[ "[" Omschrijving "]" ]
[ "{" beschikking "}" ]
[ "+" map ] [ 0*msg ]
EOL

| "#beginnen"
[ "<" id ">" ]
[ "[" Omschrijving "]" ]
[ "{" beschikking "}" ]
[ "alternatief"
| "parallel"
| iets anders ]
EOL
1*lichaam
"#end" EOL

platte tekst ::= [ "Inhoud-beschrijving:"
omschrijving EOL EOL ]
1*lijn
[ "#" EOL ]

| "#<" type "/" subtype
0*(";" kenmerk "=" waarde)
[ "(" opmerking ")" ]
[ "[" Omschrijving "]" ]
[ "{" beschikking "}" ]
[ "*8bit" | "*qp" | "*b64" ]
EOL
1*lijn
[ "#" EOL ]

regel ::= "##" tekst EOL
-- geïnterpreteerd als "#"tekst EOL
| tekst EOL

Gebruik mhbuildmh online met onworks.net-services


Ad


Ad