read(1): Skillnad mellan sidversioner

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök
(Skapade sidan med 'Perfekt, tack 👍 Nedan är **fullständig översättning av `read(1p)` till svenska**, återgiven i **MediaWiki-format**, i **samma stil som dina tidigare POSIX-översättningar**: * `==`-rubriker * inga `<code>`-taggar * `<pre>` används endast för syntax/exempel * flaggor med indragen beskrivning * korrekt POSIX-terminologi --- == READ(1P) == POSIX Programmer’s Manual == PROLOG == Denna manualsida är en del av *POSIX Programmer’s Manual*. Linux-implementeri...')
(Ingen skillnad)

Versionen från 31 januari 2026 kl. 11.44

Perfekt, tack 👍 Nedan är **fullständig översättning av `read(1p)` till svenska**, återgiven i **MediaWiki-format**, i **samma stil som dina tidigare POSIX-översättningar**:

  • `==`-rubriker
  • inga ``-taggar
  • `
    ` används endast för syntax/exempel

* flaggor med indragen beskrivning * korrekt POSIX-terminologi --- == READ(1P) == POSIX Programmer’s Manual == PROLOG == Denna manualsida är en del av *POSIX Programmer’s Manual*. Linux-implementeringen av detta gränssnitt kan skilja sig (se motsvarande Linux-manualsida för detaljer om Linux-beteende), eller så kan gränssnittet saknas helt i Linux. == NAMN == read – läs från standardinmatning till skalvariabler == SYNOPSIS == <pre> read [-r] var ...

BESKRIVNING

Verktyget read läser en enda logisk rad från standardinmatningen till en eller flera skalvariabler.

Som standard, om inte alternativet -r anges, fungerar omvänt snedstreck (backslash) som ett escape-tecken. Ett oescaperat omvänt snedstreck bevarar det bokstavliga värdet av följande tecken, med undantag för nyrad. Om en nyrad följer efter ett omvänt snedstreck tolkar read detta som radfortsättning. Det omvända snedstrecket och nyraden tas bort innan indata delas upp i fält. Alla andra oescaperade omvända snedstreck tas bort efter att indata har delats upp i fält.

Om standardinmatningen är en terminalenhet och det anropande skalet är interaktivt, kommer read att visa en uppmaning för fortsättningsrad när den läser en indatarad som slutar med omvänt snedstreck följt av nyrad, om inte alternativet -r anges.

Den avslutande nyraden (om någon) tas bort från indata och resultatet delas upp i fält på samma sätt som skalet gör vid parameterexpansion (se avsnitt 2.6.5, *Fältdelning*). Det första fältet tilldelas den första variabeln var, det andra fältet den andra variabeln var och så vidare. Om det finns färre fält än variabler sätts återstående variabler till tomma strängar. Om det finns fler fält än variabler sätts den sista variabeln till ett värde som består av:

  • fältet som motsvarar den sista variabeln i den normala tilldelningssekvensen
  • avgränsarna som följer efter detta fält
  • de återstående fälten och deras avgränsare, där efterföljande blanksteg enligt IFS ignoreras

Tilldelningen av variabler som anges av var-operanderna påverkar den aktuella skalexekveringsmiljön; se avsnitt 2.12, *Skalets exekveringsmiljö*. Om kommandot anropas i ett underskal eller i en separat exekveringsmiljö, till exempel:

(read foo)
nohup read ...
find . -exec read ... \;

kommer det inte att påverka skalvariablerna i anroparens miljö.

FLAGGOR

Verktyget read ska följa *Base Definitions*-volymen i POSIX.1-2017, avsnitt 12.2, *Riktlinjer för kommandosyntax*.

Följande flagga stöds:

-r     Behandla inte omvänt snedstreck på något särskilt sätt. Varje omvänt snedstreck betraktas som en del av indataraden.

OPERANDER

Följande operand stöds:

var     Namnet på en befintlig eller icke-befintlig skalvariabel.

STANDARDINMATNING

Standardinmatningen ska vara en textfil.

INDATAFILER

Inga.

MILJÖVARIABLER

Följande miljövariabler påverkar körningen av read:

IFS     Bestämmer de interna fältavgränsarna som används för att dela upp fält; se avsnitt 2.5.3, *Skalvariabler*.

LANG     Tillhandahåller ett standardvärde för internationaliseringsvariabler som är odefinierade eller tomma.

LC_ALL     Om satt till ett icke-tomt värde åsidosätter den alla andra internationaliseringsvariabler.

LC_CTYPE     Bestämmer språkmiljö för tolkning av byte-sekvenser som tecken.

LC_MESSAGES     Bestämmer språkmiljö för format och innehåll i diagnostiska meddelanden som skrivs till standardfel.

NLSPATH     Bestämmer platsen för meddelandekataloger för hantering av LC_MESSAGES.

PS2     Anger den uppmaningssträng som ett interaktivt skal skriver till standardfel när en rad som slutar med omvänt snedstreck och nyrad läses och -r inte har angivits.

ASYNKRONA HÄNDELSER

Standardbeteende.

STANDARDUTMATNING

Används inte.

STANDARDFEL

Standardfel används för diagnostiska meddelanden och uppmaningar för fortsatt inmatning.

UTDATAFILER

Inga.

UTÖKAD BESKRIVNING

Ingen.

AVSLUTNINGSSTATUS

Följande avslutningsvärden returneras:

0     Lyckad körning.

> 0 >     Filslut upptäcktes eller ett fel inträffade.

KONSEKVENSER AV FEL

Standard.

Följande avsnitt är informativa.

ANVÄNDNING

Alternativet -r finns med för att göra det möjligt för read att ersätta syftet med verktyget line, som inte ingår i POSIX.1-2008.

EXEMPEL

Följande kommando:

while read -r xx yy
do
    printf "%s %s\n" "$yy" "$xx"
done < input_file

skriver ut en fil där det första fältet på varje rad flyttas till slutet av raden.

MOTIVERING

Verktyget read har historiskt varit ett inbyggt skalkommando. Det separerades till ett eget verktyg för att kunna dra nytta av den mer detaljerade funktionsbeskrivning som infördes i denna volym av POSIX.1-2017.

Eftersom read påverkar den aktuella skalexekveringsmiljön tillhandahålls det normalt som ett reguljärt inbyggt skalkommando. Om det anropas i ett underskal eller i en separat exekveringsmiljö, till exempel:

(read foo)
nohup read ...
find . -exec read ... \;

påverkar det inte skalvariablerna i anroparens miljö.

Även om standardinmatningen måste vara en textfil och därför normalt slutar med en nyrad (såvida filen inte är tom), kan hantering av fortsättningsrader när -r inte används resultera i att indata inte avslutas med en nyrad. Detta inträffar om den sista raden i indatafilen slutar med omvänt snedstreck följt av nyrad. Det är av denna anledning som formuleringen ”(om någon)” används i ”Den avslutande nyraden (om någon) ska tas bort från indata” i beskrivningen. Det är inte en uppluckring av kravet på att standardinmatningen ska vara en textfil.

FRAMTIDA UTVECKLING

Ingen.

SE ÄVEN

Kapitel 2, *Skalets kommandospråk*

  • Base Definitions*-volymen i POSIX.1-2017, kapitel 8, *Miljövariabler*, avsnitt 12.2, *Riktlinjer för kommandosyntax*

COPYRIGHT

Delar av denna text är återgivna och reproducerade i elektronisk form från IEEE Std 1003.1-2017, *Standard for Information Technology – Portable Operating System Interface (POSIX)*, The Open Group Base Specifications Issue 7, 2018 Edition. Copyright © 2018 Institute of Electrical and Electronics Engineers, Inc. och The Open Group. Vid eventuella avvikelser mellan denna version och originalstandarden gäller originalstandarden som referensdokument.

Sidslut

Orginalhemsidan på Engelska https://man7.org/linux/man-pages/man1/read.1p.html

Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Digital Fixare Stockholm som har sponsrat Linux.se med webbhotell.