Unlink systemanrop i C

Unlink systemanrop i C

Systemanropet brukes i C -språket for å slette en tittel eller navn fra et hvilket som helst filsystem, e.g., Linux -system. Den eliminerer oppføringen eller lenken til en spesifikk fil eller katalog fra filsystemet, som viser at filen eller mappen er slettet, noe som ikke er tilfelle. Hvis filen eller mappen for øyeblikket ikke fungerer eller åpnes, kan den filen eller mappen bli slettet ved bruk i Unlink () Systemanrop. Det er tilfelle når filen eller mappen lenker er 0. La oss ta en titt på noen enkle eksempler for at unlink -systemanropet skal forstå det godt. Logg inn fra Ubuntu 20.04 System og åpne terminalen for å komme i gang.

Eksempel 01:

La oss ta en ny illustrasjon for å se arbeidet med "unlink ()" -systemet i Linux. La oss opprette en tekstfil først i den gjeldende katalogen ved å bruke "Touch" -instruksjonen, legge til noen data i den og vise dataene så vel som følger:

$ berør nytt.tekst
$ ekko “John”> Ny.tekst
$ katt ny.tekst

Etter å ha opprettet en fil, har vi listet opp innholdet i en hjemmekatalog som angitt nedenfor. Nå inneholder listen det nye.txt -fil også.

$ ls

La oss åpne “unlink.C ”C -fil for å legge opp litt C -språkkode i den for å fjerne filen“ Ny.tekst".

$ nano unlink.c

C -koden for å fjerne den nye.TXT -filen er vist på bildet nedenfor. Vi har også definert og inkludert visse input-output header-biblioteker og POSIX-utvidelser. Da har vi initialisert hovedmetoden for å erklære filbeskrivende “FD”. Karaktertype -matrise har blitt brukt for å få innholdet i en fil “Ny.tekst". En "if" -uttalelse har blitt brukt for å sjekke oppretterfilfeilen. Hvis filbeskrivelsen finner ut at filen har en koblingstall på mindre enn 0, kan den vise en feilmelding. Annets uttalelse har blitt brukt til å lukke filbeskrivelsen. Hvis filen ikke har ulinketallet ikke lik 0, vil den vise feilmeldingen. Lagre denne koden og returner.

Nå, kompiler filen “Unlink.C ”som nettopp er oppdatert. Samlingen av en fil fikk ingen feil indikerer at koden er bra.

$ gcc unlink.c

Etter sammenstilling må filen utføres i skallet som følger:

$ ./en.ute

La oss se innholdet i en Linux -hjemmekatalog igjen ved å bruke “LS” -kommandoen. Utgangen viser at filen “ny.TXT ”har blitt fullstendig koblet fra filsystemet til Linux.

$ ls

Eksempel 02:

En annen måte å bruke unlink i C -koden er vist på bildet nedenfor. Åpne “lenken.c ”-fil og tilordne filnavnet som et argument til systemet som heter“ Unlink ”. Koblingsverdien vil bli returnert og lagret i variabelen “n”. Den første utskriftserklæringen viser at 0 koblinger som returneres indikerer suksess, og -1 returnert betyr feil. Den andre utskriftserklæringen vil skrive ut koblingsverdien som er returnert og viser at "unlink" av en fil har vært vellykket.

Ved sammenstilling og utførelse av en fil har vi fått suksessmeldingen om at filen har blitt fullstendig koblet til som 0 indikerte suksess.

$ GCC -lenke.c
$ ./en.ute

Eksempel 03:

Til slutt vil vi se et enkelt eksempel for å bruke unlink () -systemet på noen filer i skallet. Liste over filen og mappene som er bosatt i den nåværende hjemmekatalogen til vår Ubuntu 20.04 Linux -system ved hjelp av kommandoen “ls”. Vi har tre filer i katalogen. La oss koble fra filen “Umask.C ”fra den gjeldende katalogen ved hjelp av“ Unlink ”-systemanropet i skallet som angitt nedenfor.

$ ls
$ Unlink Umask.c

Etter å ha sjekket innholdet i en hjemmekatalog nok en gang ved å bruke “LS” -kommandoen, har vi funnet ut at lenken for navnet “Umask.C ”er fjernet. Siden filen ikke ble åpnet og koblingstallet var 0, er filen fjernet fra hjemmekatalogen.

Konklusjon:

Denne artikkelen har demonstrert arbeidet med et unlink -systemanrop på C -språk innen Ubuntu 20.04 System. Vi håper alle eksemplene vil være enkle å implementere på systemet ditt ved å bruke terminal- og c -filer.