Hur tar man bort filer i Node.js med 'fs.unlink'?

Hur Tar Man Bort Filer I Node Js Med Fs Unlink



Filsystemet ' fs ”-modulen tillhandahåller olika metoder med vilka de grundläggande operationerna som läsa, arkivera, ta bort, lägga till och andra relaterade operationer enkelt kan utföras. Men borttagningen utförs mestadels dagligen av utvecklarna. Denna raderingsoperation kan utföras direkt med GUI-gränssnittet eller genom att använda ' fs ' modulmetod med namnet ' ta bort länk () ”.

Den här guiden förklarar proceduren för att ta bort filer i Node.js med hjälp av 'fs.unlink()' genom att förklara avsnitten nedan:

Hur man tar bort en fil med metoden 'fs.unlink()'.

den ' fs.unlink() ” är en synkron eller blockerande metod eftersom den stoppar exekveringen av alla andra processer tills den angivna filen raderas helt. denna ' fs.unlink() ”-metoden kan också användas för att ta bort den tilldelade ” symbolisk ” länkar som pekar till det riktade filsystemet.







Syntax



den ' fs.unlink() ” metodsyntax visas nedan:



fsObj. ta bort länken ( filePath, callbackFunc )

I ovanstående syntax:





  • den ' fsObj ” är variabeln som fungerar som objekt för en ” fs ' modul.
  • den ' sökväg ” är sökvägen till filen som finns i projektkatalogen som måste raderas.
  • den ' callbackFunc ” är den nödvändiga pilfunktionen som hjälper till att visa resultatmeddelanden eller fel som har uppstått under bearbetningen.

Låt oss gå igenom ett par exempel för praktisk implementering av metoden 'fs.unlink()'.

Exempel 1: Användning av metoden 'fs.unlink()' för att ta bort en fil

I det här exemplet kommer en slumpmässig projektfil att tas bort eller tas bort från en fil från projektkatalogen med hjälp av ' fs.unlink() 'metoden. Dess praktiska implementering visas i kodblocket nedan:



var deleteFile = behöva ( 'fs' ) ;

radera fil. ta bort länken ( 'linuxhintFile.txt' , funktion ( fel ) {

om ( fel ) kasta fel ;

trösta. logga ( 'Åtgärden för radering av filer har utförts framgångsrikt!' ) ;

} ) ;

trösta. logga ( 'Raderingsåtgärden är avslutad!' ) ;

I ovanstående kodblock:

  • Först, ' fs ”-modulen har importerats och dess objekt lagras i en ny variabel med namnet ” radera fil ”.
  • Sedan ' ta bort länk () ”-metoden anropas med hjälp av variabeln, och filnamnet som måste raderas skickas som den första parametern.
  • Dess andra återuppringningsfunktion används också för att fånga upp och visa alla inträffade fel under slutförandet av operationen.
  • Om inget fel uppstår, visa ett framgångsmeddelande. För att bekräfta det asynkrona beteendet för denna metod, skriv en kod som visar ett dummymeddelande utanför ' ta bort länk () ” metodens omfattning.

Lagra ovanstående kod i en önskad fil med filtillägget ' .js ' vilket är ' proApp.js ” i vårt fall och kör kommandot nedan för att utföra exekvering:

nod proApp. js

Den genererade utdata visar att den valda filen har tagits bort från projektkatalogen. Det asynkrona beteendet för denna metod bekräftas också eftersom meddelandet som skrivits efter metoden exekveras först:

Exempel 2: Användning av metoden 'fs.unlink()' för att ta bort en symbolisk länk

den ' symbolisk ”-länkar finns inte fysiskt i filen men de innehåller den relativa eller absoluta sökvägen som referens för andra bifogade filer. Dess användning kan öka applikationens prestanda samtidigt som den förbrukar mindre utrymme. Denna symboliska länk skapas med hjälp av ' fs.symlinkSync() ' eller ' fs.symlinkSync() ' metoder och för att radera ' fs.unlink() ” används, som visas nedan:

konst fsObj = behöva ( 'fs' ) ;

// Att etablera den symboliska länken
fsObj. symlinkSync ( __dirnamn + ' \\ index.html' , 'symbolisk fil' ) ;
trösta. logga ( ' \n Etablerad symbolisk länk till index.html-fil' ) ;

hämta filer ( ) ;

fsObj. ta bort länken ( 'symbolisk fil' , ( fel => {
om ( fel ) trösta. logga ( fel ) ;
annan {
trösta. logga ( ' \n Raderad etablerad länk: symbolicFile' ) ;
// Hämta filerna i aktuell katalog efter radering
hämta filer ( ) ;
}
}
) ) ;

// Funktion för att få aktuella filnamn i en katalog med specifik tillägg
function retrieveFiles ( ) {
trösta. logga ( ' \n Tillgängliga filer i det aktuella projektet:' ) ;
låt tillgångar = fsObj. readdirSync ( __dirnamn ) ;
tillgångar. för varje ( tillgång => {
trösta. logga ( tillgång ) ;
} ) ;
}

Förklaringen av ovanstående kodblock är som följer:

  • Importera ' fs '-modulen och lagra dess objekt i ' fsObj ' namngiven variabel.
  • Skapa en symbolisk länk till den aktuella projektfilen med namnet ' index.html ' och tilldela namnet ' symbolisk fil ” till den skapade symboliska länkfilen. den ' __dirnamn ”-egenskapen används för att hämta den absoluta sökvägen för den aktuella projektkatalogen.
  • Med hjälp av ' console.log() ”-metoden visar ett framgångsmeddelande och anropar den specialdefinierade ” retrieveFiles() ' funktion.
  • Anropa nu ' ta bort länk () ' metod via ' fsObj ” och skicka det symboliska filnamnet som den första parametern som måste raderas. Denna metod kräver en återuppringningsfunktion som används för att fånga upp och visa eventuella uppkomna fel.
  • Visa ett raderingsmeddelande och anropa igen ' retrieveFiles() ” funktion om det inte finns några fel.
  • Efter det definierar du en ' retrieveFiles() ' funktion som läser de aktuella projektkatalogerna med hjälp av ' readdirSync() ' funktion. Slutligen visas alla befintliga kataloger över konsolen med den förbättrade ' för varje ” slinga.

Kör nu ovanstående kod genom att köra den som innehåller ' .js ' typ fil. Den innehållande filen i vårt fall är ' proApp.js ” så vårt kommando att utföra kommer att vara:

nod proApp. js

Den genererade utgången visar att den symboliska länken har upprättats och sedan raderats via ' fs.unlink() ' metod:

Bonustips: Vad är metoden 'fs.unlinkSync()'?

den ' unlinkSync() ”-metoden tillhandahålls också av ” fs ” modul; det är ' synkron ' version av ' ta bort länk () 'metoden. den ' unlinkSync() ”-metoden kan användas för att utföra samma operationer som att ta bort en fil eller symboliska filer men på ett Synkront sätt. Det blockerar alla övervinnande processer tills den riktade filen inte tas bort, som visas nedan:

var deleteFile = behöva ( 'fs' ) ;

radera fil. unlinkSync ( 'linuxhintFile.txt' ) ;

trösta. logga ( 'Raderingsåtgärden är avslutad!' ) ;

I ovanstående kodblock:

  • Först, ' fs ”-modulen har importerats och dess objekt lagras i en ny variabel med namnet ” radera fil ”.
  • Sedan ' unlinkSync() metoden kallas med hjälp av radera fil ” variabel, och filnamnet som måste raderas skickas som dess parameter.
  • För att bekräfta ' synkron ' beteende av denna metod, skriv en kod som visar ett dummymeddelande bredvid ' unlinkSync() 'metoden.

Lagra ovanstående kod i en önskad fil med filtillägget ' .js ' vilket är ' proApp.js ” i vårt fall och kör kommandot nedan för att utföra exekvering:

Det handlar om att ta bort filer i Node.js med metoden 'fs.unlink()'.

Slutsats

För att ta bort filer i Node.js, skicka den riktade filsökvägen som den första och återuppringningsfunktionen för att hantera fel och för att utföra andra saker som den andra parametern för ' ta bort länk () 'metoden. den ' ta bort länk () ”-metoden används för att ta bort de symboliska länkade filerna också. Den här metoden har den synkrona versionen och heter ' unlinkSync() ' metod som fungerar på samma sätt som ' ta bort länk () '-metoden, men den inkluderar inte ' ring tillbaka ” funktionsdel. Den här guiden har förklarat processen för att ta bort filerna via ' fs.unlink() 'metoden.