Šiame vadove paaiškinama, kaip pašalinti failus iš Node.js naudojant „fs.unlink()“, paaiškinant toliau pateiktus skyrius:
Kaip pašalinti failą naudojant „fs.unlink()“ metodą
„ fs.unlink() “ yra sinchroninis arba blokuojantis metodas, nes jis sustabdo visų kitų procesų vykdymą, kol nurodytas failas bus visiškai ištrintas. Šis ' fs.unlink() 'metodas taip pat gali būti naudojamas norint pašalinti priskirtą ' simbolinis “ nuorodos, nukreipiančios į tikslinę failų sistemą.
Sintaksė
„ fs.unlink() “ metodo sintaksė parodyta žemiau:
fsObj. atsieti ( filePath, callbackFunc )
Aukščiau pateiktoje sintaksėje:
- „ fsObj “ yra kintamasis, kuris veikia kaip „objektas“ fs “ modulis.
- „ bylos kelias “ yra projekto kataloge esančio failo, kurį reikia ištrinti, kelias.
- „ atgalinis skambutisFunc “ – tai reikalinga rodyklės funkcija, padedanti rodyti rezultatų pranešimus arba klaidas, atsiradusias apdorojimo metu.
Peržiūrėkime keletą pavyzdžių, kaip praktiškai įgyvendinti „fs.unlink()“ metodą.
1 pavyzdys: „fs.unlink()“ metodo naudojimas failui pašalinti
Šiame pavyzdyje atsitiktinis projekto failas bus ištrintas arba pašalintas iš failo iš projekto katalogo naudojant „ fs.unlink() “ metodas. Jo praktinis įgyvendinimas parodytas žemiau esančiame kodo bloke:
buvo deleteFile = reikalauti ( 'fs' ) ;
Ištrinti failą. atsieti ( 'linuxhintFile.txt' , funkcija ( klaida ) {
jeigu ( klaida ) mesti klaida ;
konsolė. žurnalas ( 'Failo ištrynimo operacija atlikta sėkmingai!' ) ;
} ) ;
konsolė. žurnalas ( „Ištrynimo operacija baigta!“ ) ;
Aukščiau pateiktame kodo bloke:
- Pirma, „ fs ' modulis buvo importuotas ir jo objektas yra saugomas naujame kintamajame pavadinimu ' Ištrinti failą “.
- Tada ' atsieti () “ metodas iškviečiamas naudojant kintamąjį, o failo pavadinimas, kurį reikia ištrinti, perduodamas kaip pirmasis parametras.
- Antroji atgalinio skambinimo funkcija taip pat naudojama norint užfiksuoti ir parodyti bet kokias klaidas, įvykusias baigiant operaciją.
- Jei klaidos nėra, parodykite sėkmės pranešimą. Norėdami patvirtinti asinchroninį šio metodo veikimą, parašykite kodą, kuris rodo netikrą pranešimą už ' atsieti () “ metodo taikymo sritis.
Išsaugokite aukščiau pateiktą kodą norimame faile, kurio plėtinys yra ' .js ' kuris yra ' proApp.js “ mūsų atveju ir paleiskite toliau pateiktą komandą, kad atliktumėte vykdymą:
mazgas proApp. jsSugeneruota išvestis rodo, kad pasirinktas failas buvo ištrintas iš projekto katalogo. Be to, asinchroninis šio metodo elgesys patvirtinamas, nes pirmiausia įvykdomas pranešimas, parašytas po metodo:
2 pavyzdys: „fs.unlink()“ metodo naudojimas simbolinei nuorodai pašalinti
„ simbolinis “ nuorodos faile fiziškai neegzistuoja, tačiau jose yra santykinis arba absoliutus kelias kaip nuoroda į kitus pridėtus failus. Jo naudojimas gali padidinti programos našumą ir sunaudoti mažiau vietos. Ši simbolinė nuoroda sukurta naudojant „ fs.symlinkSync() “ arba „ fs.symlinkSync() “ metodus, o jei norite ištrinti „ fs.unlink() “ naudojamas, kaip parodyta žemiau:
konst fsObj = reikalauti ( 'fs' ) ;// Simbolinės nuorodos nustatymas
fsObj. symlinkSync ( __dirname + “ \\ index.html' , 'simbolinis failas' ) ;
konsolė. žurnalas ( “ \n Sukurta simbolinė nuoroda į index.html failą' ) ;
RetrieveFiles ( ) ;
fsObj. atsieti ( 'simbolinis failas' , ( klaida => {
jeigu ( klaida ) konsolė. žurnalas ( klaida ) ;
Kitas {
konsolė. žurnalas ( “ \n Ištrinta nustatyta nuoroda: symbolicFile' ) ;
// Ištrynus gauti failus dabartiniame kataloge
RetrieveFiles ( ) ;
}
}
) ) ;
// Funkcija gauti dabartinius failų pavadinimus kataloge su konkrečiu plėtiniu
funkcija retrieveFiles ( ) {
konsolė. žurnalas ( “ \n Galimi failai dabartiniame projekte:' ) ;
leisti turtą = fsObj. readdirSync ( __dirname ) ;
turto. kiekvienam ( turtas => {
konsolė. žurnalas ( turtas ) ;
} ) ;
}
Aukščiau pateikto kodo bloko paaiškinimas yra toks:
- Importuoti ' fs “ modulį ir išsaugokite jo objektą „ fsObj “ pavadintas kintamasis.
- Sukurkite simbolinę nuorodą į dabartinį projekto failą pavadinimu ' index.html “ ir priskirkite pavadinimą „ simbolinis failas “ į sukurtą simbolinės nuorodos failą. „ __dirname ypatybė naudojama absoliučiam dabartinio projekto katalogo keliui nuskaityti.
- Su ' console.log() “ metodas rodo sėkmės pranešimą ir iškviečia pasirinktinai apibrėžtą „ RetrieveFiles () ' funkcija.
- Dabar iškvieskite „ atsieti () “ metodas per “ fsObj “ ir nurodykite simbolinį failo pavadinimą kaip pirmąjį parametrą, kurį reikia ištrinti. Šiam metodui reikalinga atgalinio skambinimo funkcija, kuri naudojama visoms atsiradusioms klaidoms užfiksuoti ir parodyti.
- Parodykite ištrynimo pranešimą ir vėl iškvieskite „ RetrieveFiles () “ funkciją, jei nėra klaidų.
- Po to apibrėžkite „ RetrieveFiles () “ funkcija, kuri nuskaito esamus projekto katalogus naudodama „ readdirSync () ' funkcija. Galiausiai visi esantys katalogai rodomi per konsolę naudojant patobulintą ' kiekvienam “ kilpa.
Dabar paleiskite aukščiau pateiktą kodą vykdydami „ .js “ tipo failą. Mūsų atveju failas, kuriame yra „ proApp.js “, taigi, mūsų komanda vykdyti bus tokia:
mazgas proApp. jsSugeneruota išvestis rodo, kad simbolinė nuoroda buvo sukurta ir ištrinta per „ fs.unlink() “ metodas:
Papildomas patarimas: kas yra „fs.unlinkSync()“ metodas?
„ unlinkSync() “ metodą taip pat teikia „ fs “ modulis; tai yra ' sinchroninis “ versija atsieti () “ metodas. „ unlinkSync() “ metodas gali būti naudojamas norint atlikti tas pačias failo ar simbolinių failų ištrynimo operacijas, bet sinchroniniu būdu. Jis blokuoja visus įveikiamus procesus, kol tikslinis failas nebus ištrintas, kaip parodyta toliau:
buvo deleteFile = reikalauti ( 'fs' ) ;Ištrinti failą. atsieti sinchronizavimą ( 'linuxhintFile.txt' ) ;
konsolė. žurnalas ( „Ištrynimo operacija baigta!“ ) ;
Aukščiau esančiame kodo bloke:
- Pirma, „ fs ' modulis buvo importuotas ir jo objektas yra saugomas naujame kintamajame pavadinimu ' Ištrinti failą “.
- Tada ' unlinkSync() “ metodas vadinamas naudojant „ Ištrinti failą “ kintamasis, o failo pavadinimas, kurį reikia ištrinti, perduodamas kaip jo parametras.
- Norėdami patvirtinti „ sinchroninis “, parašykite kodą, kuris šalia „ unlinkSync() “ metodas.
Išsaugokite aukščiau pateiktą kodą norimame faile, kurio plėtinys yra ' .js ' kuris yra ' proApp.js “ mūsų atveju ir paleiskite toliau pateiktą komandą, kad atliktumėte vykdymą:
Tai viskas apie failų pašalinimą iš Node.js naudojant 'fs.unlink()' metodą.
Išvada
Norėdami pašalinti failus iš Node.js, nurodykite tikslinį failo kelią kaip pirmąjį, o atgalinio skambinimo funkciją, kad būtų galima apdoroti klaidas ir atlikti kitus veiksmus, kaip antrąjį parametrą „ atsieti () “ metodas. „ atsieti () “ metodas taip pat naudojamas simboliniams susietiems failams ištrinti. Šis metodas turi sinchroninę versiją, taip pat pavadintą „ unlinkSync() “ metodas, kuris veikia panašiai kaip “ atsieti () “ metodą, tačiau jis neapima „ perskambink “ funkcijos dalis. Šiame vadove paaiškintas failų pašalinimo procesas naudojant „ fs.unlink() “ metodas.