כיצד להסיר קבצים ב-Node.js באמצעות 'fs.unlink'?

Kyzd Lhsyr Qbzym B Node Js B Mz Wt Fs Unlink



מערכת הקבצים' fs מודול מספק שיטות שונות שבאמצעותן ניתן לבצע בקלות את הפעולות הבסיסיות כמו קריאה, קובץ, מחיקה, הוספה ופעולות קשורות אחרות. עם זאת, פעולת המחיקה מתבצעת לרוב על בסיס יומיומי על ידי המפתחים. פעולת מחיקה זו יכולה להתבצע ישירות באמצעות ממשק ה-GUI או על ידי ניצול של ' fs 'שיטת מודול בשם ' unlink() '.

מדריך זה מסביר את ההליך להסרת קבצים ב-Node.js בעזרת 'fs.unlink()' על ידי הסבר על הסעיפים שלהלן:

כיצד להסיר קובץ באמצעות שיטת 'fs.unlink()'.

ה ' fs.unlink() ” היא שיטה סינכרונית או חוסמת שכן היא עוצרת את הביצוע של כל שאר התהליכים עד שהקובץ שצוין יימחק לחלוטין. זה ' fs.unlink() ניתן להשתמש בשיטה גם כדי להסיר את ה-' המוקצה ' סִמלִי ' קישורים המצביעים על מערכת הקבצים הממוקדת.







תחביר



ה ' fs.unlink() תחביר השיטה מוצג להלן:



fsObj. לבטל את הקישור ( filePath, callbackFunc )

בתחביר לעיל:





  • ה ' fsObj ' הוא המשתנה שפועל כאובייקט של ' fs ' מודול.
  • ה ' filePath ” הוא הנתיב של הקובץ שנמצא בתוך ספריית הפרויקט שיש למחוק.
  • ה ' callbackFunc ” היא פונקציית החץ הנדרשת המסייעת בהצגת הודעות התוצאה או השגיאות שעלו במהלך העיבוד.

בואו נעבור על כמה דוגמאות ליישום מעשי של שיטת 'fs.unlink()'.

דוגמה 1: שימוש בשיטה 'fs.unlink()' להסרת קובץ

בדוגמה זו, קובץ פרויקט אקראי יימחק או יוסר מקובץ מספריית הפרויקט באמצעות ' fs.unlink() ' שיטה. היישום המעשי שלו מוצג בגוש הקוד שלהלן:



היה deleteFile = לִדרוֹשׁ ( 'fs' ) ;

מחק קובץ. לבטל את הקישור ( 'linuxhintFile.txt' , פונקציה ( שְׁגִיאָה ) {

אם ( שְׁגִיאָה ) לזרוק שְׁגִיאָה ;

לְנַחֵם. עֵץ ( 'הפעולה למחיקת קבצים מבוצעת בהצלחה!' ) ;

} ) ;

לְנַחֵם. עֵץ ( 'מבצע המחיקה הסתיים!' ) ;

בגוש הקוד שלמעלה:

  • קודם ה ' fs מודול ' יובא והאובייקט שלו מאוחסן במשתנה חדש בשם ' מחק קובץ '.
  • אז ה ' unlink() 'שיטה נקראת באמצעות המשתנה, ושם הקובץ שצריך למחוק מועבר כפרמטר הראשון.
  • פונקציית ההתקשרות השנייה שלו משמשת גם כדי לתפוס ולהציג כל שגיאה שהתרחשה במהלך השלמת הפעולה.
  • במקרה שאין שגיאה, הצג הודעת הצלחה. כדי לאשר את ההתנהגות האסינכרונית של שיטה זו, כתוב קוד המציג הודעת דמה מחוץ ל' unlink() ' היקף השיטה.

אחסן את הקוד לעיל בקובץ רצוי בעל סיומת ' .js 'שזה' proApp.js ' במקרה שלנו והפעל את הפקודה למטה כדי לבצע ביצוע:

node proApp. js

הפלט שנוצר מראה שהקובץ שנבחר נמחק מספריית הפרויקט. כמו כן, ההתנהגות האסינכרונית של שיטה זו מאושרת מכיוון שההודעה שנכתבה לאחר ביצוע השיטה תחילה:

דוגמה 2: שימוש בשיטת 'fs.unlink()' להסרת קישור סמלי

ה ' סִמלִי ' לקישורים אין קיום פיזי בקובץ אבל הם מכילים את הנתיב היחסי או המוחלט כאסמכתא לקבצים מצורפים אחרים. השימוש בו יכול להגביר את ביצועי האפליקציה תוך צריכת פחות מקום. קישור סמלי זה נוצר בעזרת ' fs.symlinkSync() ' או ' fs.symlinkSync() ' שיטות ולמחיקת ' fs.unlink() ' משמש, כפי שמוצג להלן:

const fsObj = לִדרוֹשׁ ( 'fs' ) ;

// הקמת הקישור הסמלי
fsObj. symlinkSync ( __שם שם + ' \\ index.html' , 'קובץ סימבולי' ) ;
לְנַחֵם. עֵץ ( ' \n קישור סמלי הוקם לקובץ index.html' ) ;

retrieveFiles ( ) ;

fsObj. לבטל את הקישור ( 'קובץ סימבולי' , ( שְׁגִיאָה => {
אם ( שְׁגִיאָה ) לְנַחֵם. עֵץ ( שְׁגִיאָה ) ;
אַחֵר {
לְנַחֵם. עֵץ ( ' \n נמחק קישור מבוסס: symbolicFile' ) ;
// קבל את הקבצים בספרייה הנוכחית לאחר המחיקה
retrieveFiles ( ) ;
}
}
) ) ;

// פונקציה לקבל שמות קבצים נוכחיים בספרייה עם סיומת ספציפית
function retrieveFiles ( ) {
לְנַחֵם. עֵץ ( ' \n קבצים זמינים בפרויקט הנוכחי:' ) ;
לתת נכסים = fsObj. readdirSync ( __שם שם ) ;
נכסים. לכל אחד ( נכס => {
לְנַחֵם. עֵץ ( נכס ) ;
} ) ;
}

ההסבר של בלוק הקוד לעיל הוא כדלקמן:

  • ייבא את ' fs ' מודול ואחסן את האובייקט שלו ב' fsObj ' משתנה בשם.
  • צור קישור סמלי לקובץ הפרויקט הנוכחי בשם ' index.html ' ולהקצות את השם ' symbolicFile ' לקובץ הקישור הסמלי שנוצר. ה ' __שם שם 'מאפיין משמש כדי לאחזר את הנתיב המוחלט עבור ספריית הפרויקט הנוכחית.
  • בעזרת ה' console.log() ' השיטה מציגה הודעת הצלחה ומפעילה את ' המוגדר בהתאמה אישית ' retrieveFiles() ' פונקציה.
  • כעת, קרא את ' unlink() 'שיטה באמצעות ' fsObj ' והעבירו את שם הקובץ הסמלי כפרמטר הראשון שצריך למחוק. שיטה זו דורשת פונקציית התקשרות חוזרת המשמשת כדי לתפוס ולהציג שגיאות שנוצרו.
  • הצג הודעת מחיקה והפעל שוב את ' retrieveFiles() ' פונקציה אם אין שגיאות.
  • לאחר מכן, הגדר ' retrieveFiles() ' פונקציה שקוראת את ספריות הפרויקט הנוכחיות באמצעות ' readdirSync() ' פונקציה. לבסוף, כל הספריות המתגוררות מוצגות על גבי הקונסולה באמצעות הסמל המשופר ' לכל אחד 'לולאה.

כעת, הפעל את הקוד שלמעלה על ידי ביצוע הטקסט המכיל ' .js ' הקלד קובץ. התיק המכיל בענייננו הוא ' proApp.js אז, הפקודה שלנו לביצוע תהיה:

node proApp. js

הפלט שנוצר מראה שהקישור הסמלי נוצר ולאחר מכן נמחק באמצעות ' fs.unlink() ' שיטה:

טיפ בונוס: מהי שיטת 'fs.unlinkSync()'?

ה ' unlinkSync() שיטת ' מסופקת גם על ידי ' fs ' מודול; זה ' סינכרוני ' גרסה של ' unlink() ' שיטה. ה ' unlinkSync() ניתן להשתמש בשיטה כדי לבצע את אותן פעולות של מחיקת קובץ או קבצים סמליים אך בצורה סינכרונית. זה חוסם את כל תהליכי ההתגברות עד שהקובץ הממוקד לא יימחק, כפי שמוצג להלן:

היה deleteFile = לִדרוֹשׁ ( 'fs' ) ;

מחק קובץ. unlinkSync ( 'linuxhintFile.txt' ) ;

לְנַחֵם. עֵץ ( 'מבצע המחיקה הסתיים!' ) ;

בגוש הקוד שלמעלה:

  • קודם ה ' fs מודול ' יובא והאובייקט שלו מאוחסן במשתנה חדש בשם ' מחק קובץ '.
  • אז ה ' unlinkSync() 'שיטה נקראת באמצעות ' מחק קובץ ' משתנה, ושם הקובץ שצריך למחוק מועבר כפרמטר שלו.
  • כדי לאשר את ' סינכרוני ' התנהגות של שיטה זו, כתוב קוד המציג הודעת דמה לצד ' unlinkSync() ' שיטה.

אחסן את הקוד לעיל בקובץ רצוי בעל סיומת ' .js 'שזה' proApp.js ' במקרה שלנו והפעל את הפקודה למטה כדי לבצע ביצוע:

זה הכל לגבי הסרת קבצים ב-Node.js באמצעות שיטת 'fs.unlink()'.

סיכום

כדי להסיר קבצים ב-Node.js, העבר את נתיב הקובץ הממוקד בתור הראשון ואת פונקציית ההתקשרות חזרה כדי לטפל בשגיאות ולבצע דברים אחרים בתור הפרמטר השני עבור ' unlink() ' שיטה. ה ' unlink() שיטת ” משמשת גם כדי למחוק את הקבצים המקושרים הסימבוליים. לשיטה זו יש את הגרסה הסינכרונית גם בשם ' unlinkSync() שיטה הפועלת בדומה ל' unlink() שיטת ', אך היא אינה כוללת את ' התקשר חזרה 'חלק פונקציה. מדריך זה הסביר את תהליך הסרת הקבצים באמצעות ' fs.unlink() ' שיטה.