乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Win7系統(tǒng)命令講解-mklink命令

       richsky 2012-03-30
      桌面、我的文檔、我的圖片等等,尤其是軟件的配置,一切都沒了。很多來不及轉移的資料都沒了,頗為心痛!

      從 Vista 以后,微軟將用戶文件和用戶的軟件配置( AppData ) 明確劃分開,并且全部存放在使用者的用戶目錄下。

      Linux早已這樣做了,并且在Linux中可將 home 掛載為獨立分區(qū),而微軟顯然還沒學到家。用戶目錄依舊和系統(tǒng)目錄一起放在同一分區(qū)。

      如何將用戶目錄移動到非系統(tǒng)分區(qū)?這是本文的出發(fā)點。但本文的重心不在于此,而是 mklink ,一個命令。

      一、何為 mklink
      mklink 是何方神圣,值得專門作文講述?

      如果用過 Linux ,那想必也看到過符號鏈接(這是一種特殊的文件),也用過 “ ln ” 這個鏈接命令,mklink 和 ln 的功能幾乎一樣。

      mklink 便是用來創(chuàng)建符號鏈接的,這個命令并不知名,使用的人也不多。

      自從 Vista 以后,微軟便在 widows中 偷偷地用起了這個工具 。在用戶目錄下,可以看到很多很像快捷方式的文件,當然這是隱藏的,但卻不能打開,其實這便是符號鏈接。

      >dir C:\Users\wclu /a
      驅動器 C 中的卷是 win7
      卷的序列號是 8CD0-A743

      C:\Users\wclu 的目錄

      2009/06/11 11:42    <DIR>          .
      2009/06/11 11:42    <DIR>          ..
      2009/06/11 00:04    <DIR>          AppData
      2009/06/11 00:04    <JUNCTION>     Application Data [C:\Users\wclu\AppData\Roaming]
      2009/06/11 00:04    <DIR>          Contacts
      2009/06/11 00:04    <JUNCTION>     Cookies [C:\Users\wclu\AppData\Roaming\Microsoft\Windows\Cookies]
      2009/06/11 10:05    <DIR>          Desktop
      2009/06/11 00:04    <DIR>          Documents
      2009/06/11 02:44    <DIR>          Downloads
      2009/06/11 00:04    <DIR>          Favorites
      2009/06/11 00:04    <DIR>          Links
      2009/06/11 00:04    <JUNCTION>     Local Settings [C:\Users\wclu\AppData\Local]
      2009/06/11 00:04    <DIR>          Music
      2009/06/11 00:04    <JUNCTION>     My Documents [C:\Users\wclu\Documents]

      上述標紅色的文件,便是符號鏈接了(上述文件并非C:\Users\wclu目錄下全部文件) 。

      Vista/Windows 7使用這些符號鏈接,是為了兼容XP等系統(tǒng)。

      二、mklink 用法
      mklink 只能在命令提示符 “CMD” 中使用。

      >mklink /?
      創(chuàng)建符號鏈接。

      MKLINK [[/D] | [/H] | [/J]] Link Target

      /D      創(chuàng)建目錄符號鏈接。黙認為文件
      符號鏈接。
      /H      創(chuàng)建硬鏈接,而不是符號鏈接。
      /J      創(chuàng)建目錄聯接。
      Link    指定新的符號鏈接名稱。
      Target 指定新鏈接引用的路徑
      (相對或絕對)。

      注:上述的符號鏈接等同于Linux中的軟鏈接。

      為了試驗 mklink 的功能,我在 C分區(qū)中創(chuàng)建目錄 a ,并在目錄中存放文件 1.txt。

      創(chuàng)建文件鏈接
      E:\>mklink c:\1   c:\a\1.txt拒絕訪問。

      E:\>mklink c:\2.txt c:\a\1.txt
      為 c:\2.txt <<===>> c:\a\1.txt 創(chuàng)建的符號鏈接

      可見為文件創(chuàng)建鏈接時,符號鏈接文件的擴展名要和原文件保持一致。

      E:\>mklink c:\a\1.txt d:\3.txt
      當文件已存在時,無法創(chuàng)建該文件。

      E:\>mklink d:\3.txt c:\a\1.txt
      為 d:\3.txt <<===>> c:\a\1.txt 創(chuàng)建的符號鏈接

      可見為文件創(chuàng)建鏈接時,必須是 “mklink 符號鏈接文件名   原文件名”的格式。

      創(chuàng)建目錄鏈接
      E:\>mklink /d c:\b d:\a
      為 c:\b <<===>> d:\a 創(chuàng)建的符號鏈接

      雖然d:\a 目錄不存在,但依然可以創(chuàng)建鏈接,很好很強大。但打開鏈接時,提示錯誤。

      E:\>mklink /d d:\a c:\a
      為 d:\a <<===>> c:\a 創(chuàng)建的符號鏈接

      E:\>dir d: /a
      驅動器 D 中的卷是 soft
      卷的序列號是 BE86-8884

      D:\ 的目錄

      2009/06/11 10:00    <DIR>          $RECYCLE.BIN
      2009/06/11 13:08    <SYMLINK>      3.txt [c:\a\1.txt]
      2009/06/11 13:18    <SYMLINKD>     a [c:\a]
      2009/06/11 12:54    <DIR>          Program Files
      2009/06/11 09:58    <DIR>          System Volume Information
      1 個文件              0 字節(jié)
      4 個目錄 31,089,442,816 可用字節(jié)

      當把D分區(qū)中的鏈接文件刪除時,C分區(qū)中的文件和文件夾不受任何影響。

      三、mklink /d 與 makelink /j 的異同
      從 mklink 的幫助中可以看到,兩者皆可以創(chuàng)建目錄鏈接。

      細心的同學可以發(fā)現,前者是創(chuàng)建目錄鏈接,而后者是創(chuàng)建目錄聯接。

      一字之差,有何分別?

      下面分別用這兩種方式為同一目錄創(chuàng)建鏈接:

      E:\>mklink /j d:\a c:\a
      為 d:\a <<===>> c:\a 創(chuàng)建的聯接

      E:\>mklink /d d:\b c:\a
      為 d:\b <<===>> c:\a 創(chuàng)建的符號鏈接

      下面顯示D分區(qū)中的文件及目錄列表:

      E:\>dir d: /a
      驅動器 D 中的卷是 soft
      卷的序列號是 BE86-8884

      D:\ 的目錄

      2009/06/11 10:00    <DIR>          $RECYCLE.BIN
      2009/06/11 13:33    <SYMLINK>      1.txt [c:\a\1.txt]
      2009/06/11 13:34    <JUNCTION>     a [c:\a]
      2009/06/11 13:35    <SYMLINKD>     b [c:\a]
      2009/06/11 12:54    <DIR>          Program Files
      2009/06/11 09:58    <DIR>          System Volume Information
      1 個文件              0 字節(jié)
      5 個目錄 31,089,442,816 可用字節(jié)

      mklink 不加參數或加參數 /d 時,創(chuàng)建的鏈接文件為<SYMLINK>型(<SYMLINKD>代表鏈接到目錄)。

      當加參數 /j 時,只能為目錄創(chuàng)建聯接,并且創(chuàng)建的聯接文件為<JUNCTION>型,兩種類型的鏈接文件有顯著區(qū)別:

      從最開始的 “ >dir C:\Users\wclu /a ” 可以看出,微軟自家使用的都是<JUNCTION>型,至于為何,留待考證。

      四、鏈接文件的特性
      剛剛講述了如何用 mklink 創(chuàng)建鏈接文件,那么接下來重點講述如何鏈接文件的特性,既然是特性,那就是與眾不同了。

      符號鏈接文件自身不能被 “復制”(只能通過特殊方法才能復制)
      當復制符號鏈接文件時,會將符號鏈接所鏈接的目標文件或目錄進行復制,并非是復制符號鏈接文件本身。
      如何實現符號鏈接文件的復制呢?
      >copy /?
      /L           如果源是符號鏈接,請將鏈接復制
      到目標而不是源鏈接指向的實際文件。

      >xcopy /?      /B           對照鏈接目標復制符號鏈接本身

      /* d:\1.txt 為<SYMLINK>型符號鏈接 */
      E:\>xcopy d:\1.txt e:\1.txt /b
      目標 E:\1.txt 是文件名
      還是目錄名
      (F = 文件,D = 目錄)? F
      D:\1.txt
      復制了 1 個文件

      /* d:\a 為<JUNCTION>型符號鏈接 */
      E:\>xcopy d:\a e:\a /B
      目標 E:\a 是文件名
      還是目錄名
      (F = 文件,D = 目錄)? D
      復制了 0 個文件

      /* d:\b 為<SYMLINKD>型符號鏈接 */
      E:\>xcopy d:\b e:\b /B
      目標 E:\b 是文件名
      還是目錄名
      (F = 文件,D = 目錄)? D
      復制了 0 個文件

      E:\>dir e: /a
      驅動器 E 中的卷是 data
      卷的序列號是 FEEE-FB51

      E:\ 的目錄

      2009/06/11 10:00    <DIR>          $RECYCLE.BIN
      2009/06/11 13:33    <SYMLINK>      1.txt [c:\a\1.txt]
      2009/06/11 13:34    <DIR>          a
      2009/06/11 13:35    <SYMLINKD>     b [c:\a]
      2009/06/11 09:58    <DIR>          System Volume Information
      1 個文件              0 字節(jié)
      4 個目錄 31,362,203,648 可用字節(jié)

      可見采用xcopy命令并上參數 /B ,可以成功復制 <SYMLINK> 型的符號鏈接文件,而<JUNCTION>型鏈接卻不能被復制。

      符號鏈接文件的透明性
      符號鏈接的操作是透明的:對符號鏈接文件進行讀寫的程序會表現得直接對目標文件進行操作。
      普通的文件操作命令(如cp、rm等)都能直接作用于符號鏈接。用于讀寫文件內容的命令將會直接訪問目標文件。
      五、使用 mklink 實現用戶目錄的移動
      前面說過本文的出發(fā)點是“移動用戶目錄到非系統(tǒng)分區(qū)”,想起以前中學寫作文,很強調 “首尾照應”,那么,照應來了。

      如何通過mklink實現vista/windows7中用戶目錄的移動?可參考以下兩篇文章:

      http://www./read.php?11

      http:///move-user-profile-in-windows-7/

      引用其中部分內容,也即是具體步驟:

      在“計算機管理”里把Administrator用戶激活,注銷后用Administrator登錄;
      把“C:\Users\我的用戶名”整個目錄移到其它盤上,假設移到“D:\我的用戶名”;
      用mklink創(chuàng)建目錄鏈接:mklink /d C:\Users\我的用戶名   D:\Users\我的用戶名;
      重新登錄你自己的賬號,大功告成;
      下次重裝時,還用同一個用戶名,先用Administrator登錄后把新系統(tǒng)中的"C:\Users\我的用戶名"
      刪除(否則mklink會報無法創(chuàng)建鏈接),再用第3步把你位于D盤上的目錄重新做下鏈接即可。
      (本人注:推薦進入雙系統(tǒng)或者 Winpe, 移動 C:\Users 中的用戶目錄。)

      直接按照以上步驟進行操作會出現上述我所說的問題,原有 C:\Users\我的用戶名 目錄下的符號鏈接文件在復制后會失效,變成一個個空目錄。

      為了解決這個問題,可在 D:\Users\我的用戶名 新建系統(tǒng)原有鏈接文件。

      mklink /D    "D:\Users\wclu\Application Data" D:\Users\wclu\AppData\Roaming
      mklink /D    "D:\Users\wclu\Cookies" D:\Users\wclu\AppData\Roaming\Microsoft\Windows\Cookies
      mklink /D    "D:\Users\wclu\Local Settings" D:\Users\wclu\AppData\Local
      mklink /D    "D:\Users\wclu\My Documents" D:\Users\wclu\Documents
      mklink /D    D:\Users\wclu\NetHood "D:\Users\wclu\AppData\Roaming\Microsoft\Windows\Network Shortcuts"
      mklink /D    D:\Users\wclu\PrintHood "D:\Users\wclu\AppData\Roaming\Microsoft\Windows\Printer Shortcuts"
      mklink /D    D:\Users\wclu\Recent D:\Users\wclu\AppData\Roaming\Microsoft\Windows\Recent
      mklink /D    D:\Users\wclu\SendTo D:\Users\wclu\AppData\Roaming\Microsoft\Windows\SendTo
      mklink /D    D:\Users\wclu\Templates D:\Users\wclu\AppData\Roaming\Microsoft\Windows\Templates
      mklink /D    "D:\Users\wclu\「開始」菜單" "D:\Users\wclu\AppData\Roaming\Microsoft\Windows\Start Menu"

      (wclu為本人的用戶名,需要替換掉,將上述內容保存為.bat文件,執(zhí)行,完美無暇、如假包換的用戶目錄誕生了。)

        本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多