O_RDONLY, O_WRONLY og O_RDWR FLAGS IN C Language

O_RDONLY, O_WRONLY og O_RDWR FLAGS IN C Language

I programmering lar filadministrasjon oss lagre og få tilgang til alle typer informasjon, enten i brukeropprettede databaser, systemfiler for å kjøre programmer, kjørbare filer og så videre.

C -språket gir blant annet den åpne () -funksjonen for å lage eller åpne filer. Denne funksjonen åpnes eller oppretter en fil som er spesifisert i inngangsargumentene av sin absolutte eller relative bane.

Når vi bruker denne funksjonen, har vi muligheten til å spesifisere via flagg attributtene som filen som skal åpnes eller opprettes, må for eksempel ha. om det skal være skrivebeskyttet, skriveeskriving eller begge deler.

I dette Linux hint Artikkel, vil du lære hvordan du spesifiserer lese- og skriveattributtene til filer ved hjelp av O_rdonly, O_wronly, og O_rdwr flagg.

Vi vil se på en teoretisk beskrivelse av disse flaggene og deretter implementere bruken av dem i eksempler som inkluderer kodebiter og bilder der vi setter lese- og skriveattributter med disse flaggene.

Beskrivelse av flaggene O_RDONLY, O_WRONLY og O_RDWR.

Flaggene O_rdonly, O_wronly og O_rdwr brukes i den åpne () systemfunksjonen for å spesifisere åpningsmodus for en fil. For bedre å forstå hva disse flaggene handler om, la oss se på syntaksen sammen med en kort beskrivelse av denne funksjonen.

Int Open (Char *Path, Int Flags)

Open () -funksjonen åpner filen som er spesifisert i sti I en av de følgende tre modusene som er spesifisert i flagg:

O_RDONLY: Åpne eller opprett en skrivebeskyttet fil

O_wronly: åpner eller oppretter en skrivefil.

O_RDWR: åpner eller oppretter en fil med lese- og skrivetilgang.

Open () -funksjonen bruker også flere flagg som O_ Create, for å lage en fil eller

O_ Legg til, for å legge tekst til det. I tilfeller der mer enn ett flagg brukes i flaggets inngangsargument, må en logisk eller operasjon utføres mellom dem.

Disse flaggene og funksjonene som bruker dem er definert i “FCNTL.h ”header. Derfor må vi inkludere dem i våre “.C ”-filen som følger for å bruke dem:

#inkludere

Hvordan åpne en fil med lese- og skrivetillatelse ved hjelp av Open () -funksjonen og O_RDONLY, O_WRONLY og O_RDWR -flaggene på C -språket.

I dette eksemplet vil vi vise deg hvordan du åpner en fil med lese- og skrivetillatelser. For å gjøre dette bruker vi Open () -funksjonen, og spesifiserer banen og navnet på filen i sti Input -argument og O_rdwr lese og skrive flagg I inngangsflaggene. Her er koden:

#inkludere
#inkludere
tomrom ()

Int FD Open ("Dokumenter/eksempel.txt ", o_rdwr);

På denne måten returnerer Open () FD -deskriptoren som vi kan bruke med lese () og skrive () -funksjoner for å lese og skrive filen.

Hvordan lage en fil og angi lese- og skriveattributtene med flaggene O_RDONLY, O_WRONLY og O_RDWR på C -språket.

I dette eksemplet lager vi en fil som heter "eksempel.tekst" og lagre den i “Dokumenter” katalog med bare leste attributter ved å bruke O_rdonly flagg.

For å gjøre dette, legger vi overskriften “FCNTL.h ”til vår fil og ring den åpne () -funksjonen som spesifiserer den relative banen og navnet på filen i sti Inngangsargument, som i dette tilfellet er “Dokumenter/eksempel. tekst".

Siden vi ønsker å opprette filen, bruker vi O_ creat flagg. Og siden vi ønsker å gi det skrivebeskyttede attributter, bruker vi O_rdonly flagg. Så vi må utføre en logisk eller operasjon mellom disse to flaggene. Her er koden for dette eksemplet:

#inkludere
#inkludere
tomrom ()

Int FD Open ("Dokumenter/eksempel.txt ", o_creat | o_rdonly);

Vi kompilerer koden i Linux -kommandokonsollen ved hjelp av GCC, og spesifiserer banen og navnet på ".c ”-fil og navnet på utdataene, som vist nedenfor:

~ $ gcc dokumenter/o_flags.c -o o_flag

Og vi utfører utdataene med følgende kommando:

~ $ ./o_flag

Når du kjører denne koden, vil Open () -funksjonen opprette en fil med skrivebeskyttede attributter. I den følgende figuren kan vi se filen som er opprettet i Linux File Manager og dens skrivebeskyttede attributter i dens egenskaper.

Hvis vi ønsker å opprette en fil med lese- og skrivetilgang, må vi bruke O_rdwr flagg som vist nedenfor:

#inkludere
#inkludere
tomrom ()

Int FD Open ("Dokumenter/eksempel.txt ", o_creat | o_rdwr);

I dette tilfellet oppretter Open () -funksjonen en fil med lese- og skriveattributter som vist i følgende figur.

Konklusjon

I dette Linux hint Artikkel om C -språket, vi forklarte hvordan du kan bruke O_rdonly, O_wronly, og O_rdwr Flagg for å velge åpen modus for en fil når du bruker Open () -funksjonen.

Vi viste deg også hvordan du lager filer ved hjelp av Open () -funksjonen og O_ creat flagg, og hvordan du skal tilordne lese og skrive tillatelser ved å utføre en logisk eller operasjon mellom den og O_rdonly og O_wronly flagg.

Vi håper at du fant denne artikkelen nyttig. For flere artikler om C -språket og Linux -tipsene, bruk søkemotoren på nettstedet vårt.