官术网_书友最值得收藏!

  • Node.js全程實例
  • 李柯泉編著
  • 591字
  • 2020-01-20 14:59:56

3.5 讀取文件符號鏈接

文件系統模塊提供了fs.readlink()和fs.readlinkSync()兩個方法來完成讀取文件符號鏈接的方法的操作。下面介紹一個通過fs.readlinkSync()方法以同步方式讀取文件符號鏈接的代碼實例。

【代碼3-6】(詳見源代碼目錄ch03-node-fs-readlink-sync.js文件)

【代碼分析】

? 本例程為了測試讀取文件符號鏈接的操作,借用了3.4節中所使用的兩個文件(原始文件“symlinkSync.txt”及其符號鏈接文件“symlinkSyncNew.txt”)。

? 第08行代碼定義了一個符號鏈接文件“symlinkSyncNew.txt”的路徑。

? 第13行代碼通過調用fs.readlinkSync()方法(同步方式)執行了讀取符號鏈接文件“symlinkSyncNew.txt”的操作,返回值保存在變量(linkString)中。

圖3.6 讀取文件符號鏈接的方法(1)

在控制臺中運行該Node程序,具體的輸出內容如圖3.6所示。

如圖3.6中的標識所示,第14行代碼輸出了變量(linkString)的值為“symlinkSync.txt”,說明“symlinkSyncNew.txt”是一個文件符號鏈接,其所鏈接的對象就是原始文件symlinkSync.txt。

上面介紹了通過fs.readlinkSync()方法讀取文件符號鏈接的方法。如果通過該方法讀取原始文件,那么會得到什么結果呢?下面將【代碼3-6】略作修改,嘗試用fs.readlinkSync()方法讀取原始文件。

【代碼3-7】(詳見源代碼目錄ch03-node-fs-readlink-sync.js文件)

【代碼分析】

? 第08行代碼定義了一個原始文件“symlinkSync.txt”的路徑。

? 第13行代碼通過調用fs.readlinkSync()方法(同步方式)執行了讀取原始文件“symlinkSync.txt”的操作,返回值保存在變量(srcString)中。

在控制臺中運行該Node程序,具體的輸出內容如圖3.7所示。

圖3.7 讀取文件符號鏈接的方法(2)

如圖3.7中的箭頭所示,第13行代碼中嘗試通過fs.readlinkSync()方法讀取原始文件“symlinkSync.txt”的操作拋出了錯誤,這說明fs.readlinkSync()方法只對文件符號鏈接有效。

主站蜘蛛池模板: 昭平县| 韩城市| 阿坝县| 天水市| 扶绥县| 阿尔山市| 隆子县| 济宁市| 云林县| 永福县| 秀山| 嘉荫县| 增城市| 仁怀市| 成安县| 靖江市| 冀州市| 大新县| 韩城市| 微博| 介休市| 莱西市| 扬中市| 财经| 永和县| 如东县| 阜阳市| 安岳县| 定日县| 琼中| 台江县| 建湖县| 黎川县| 海安县| 曲沃县| 泾川县| 都匀市| 老河口市| 瑞昌市| 五河县| 林芝县|