綁定帳號登入

Android 台灣中文網

打印 上一主題 下一主題

[經驗] 複製檔案並保留原始檔案創建日期的方法

[複製連結] 查看: 6863|回覆: 2|好評: 0
跳轉到指定樓層
樓主
efun | 收聽TA | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
發表於 2016-7-3 14:58

馬上加入Android 台灣中文網,立即免費下載應用遊戲。

您需要 登錄 才可以下載或查看,沒有帳號?註冊

x
本帖最後由 efun 於 2016-7-3 18:55 編輯

不需額外安裝任何軟體,只要Windows 版本是VISTA以上,都有這指令。

開始 → 執行 → cmd輸入以下指令會顯示使用說明
robocopy /?這個指令的格式是這樣的
      
  1. Usage :: ROBOCOPY source destination [file [file]...] [options]

  2.       source :: Source Directory (drive:path or serversharepath).
  3. destination :: Destination Dir  (drive:path or serversharepath).
  4.         file :: File(s) to copy  (names/wildcards: default is "*.*").
複製代碼

各種參數的說明如下 (取自微軟官方說明文件):
  1. ::
  2. :: Copy options :
  3. ::
  4.                  /S :: copy Subdirectories, but not empty ones.
  5.                  /E :: copy subdirectories, including Empty ones.
  6.              /LEV:n :: only copy the top n LEVels of the source directory tree.

  7.                  /Z :: copy files in restartable mode.
  8.                  /B :: copy files in Backup mode.
  9.                 /ZB :: use restartable mode; if access denied use Backup mode.
  10.             /EFSRAW :: copy all encrypted files in EFS RAW mode.

  11.   /COPY:copyflag[s] :: what to COPY for files (default is /COPY:DAT).
  12.                        (copyflags : D=Data, A=Attributes, T=Timestamps).
  13.                        (S=Security=NTFS ACLs, O=Owner info, U=aUditing info).

  14.            /DCOPY:T :: COPY Directory Timestamps.

  15.                /SEC :: copy files with SECurity (equivalent to /COPY:DATS).
  16.            /COPYALL :: COPY ALL file info (equivalent to /COPY:DATSOU).
  17.             /NOCOPY :: COPY NO file info (useful with /PURGE).

  18.             /SECFIX :: FIX file SECurity on all files, even skipped files.
  19.             /TIMFIX :: FIX file TIMes on all files, even skipped files.

  20.              /PURGE :: delete dest files/dirs that no longer exist in source.
  21.                /MIR :: MIRror a directory tree (equivalent to /E plus /PURGE).

  22.                /MOV :: MOVe files (delete from source after copying).
  23.               /MOVE :: MOVE files AND dirs (delete from source after copying).

  24.      /A+:[RASHCNET] :: add the given Attributes to copied files.
  25.      /A-:[RASHCNET] :: remove the given Attributes from copied files.

  26.             /CREATE :: CREATE directory tree and zero-length files only.
  27.                /FAT :: create destination files using 8.3 FAT file names only.
  28.                /256 :: turn off very long path (> 256 characters) support.

  29.              /MON:n :: MONitor source; run again when more than n changes seen.
  30.              /MOT:m :: MOnitor source; run again in m minutes Time, if changed.

  31.       /RH:hhmm-hhmm :: Run Hours - times when new copies may be started.
  32.                 /PF :: check run hours on a Per File (not per pass) basis.

  33.              /IPG:n :: Inter-Packet Gap (ms), to free bandwidth on slow lines.

  34.                 /SL :: copy symbolic links versus the target.

  35.             /MT[:n] :: Do multi-threaded copies with n threads (default 8).
  36.                        n must be at least 1 and not greater than 128.
  37.                        This option is incompatible with the /IPG and /EFSRAW options.
  38.                        Redirect output using /LOG option for better performance.

  39. ::
  40. :: File Selection Options :
  41. ::
  42.                  /A :: copy only files with the Archive attribute set.
  43.                  /M :: copy only files with the Archive attribute and reset it.
  44.     /IA:[RASHCNETO] :: Include only files with any of the given Attributes set.
  45.     /XA:[RASHCNETO] :: eXclude files with any of the given Attributes set.

  46. /XF file [file]... :: eXclude Files matching given names/paths/wildcards.
  47. /XD dirs [dirs]... :: eXclude Directories matching given names/paths.

  48.                 /XC :: eXclude Changed files.
  49.                 /XN :: eXclude Newer files.
  50.                 /XO :: eXclude Older files.
  51.                 /XX :: eXclude eXtra files and directories.
  52.                 /XL :: eXclude Lonely files and directories.
  53.                 /IS :: Include Same files.
  54.                 /IT :: Include Tweaked files.

  55.              /MAX:n :: MAXimum file size - exclude files bigger than n bytes.
  56.              /MIN:n :: MINimum file size - exclude files smaller than n bytes.

  57.           /MAXAGE:n :: MAXimum file AGE - exclude files older than n days/date.
  58.           /MINAGE:n :: MINimum file AGE - exclude files newer than n days/date.
  59.           /MAXLAD:n :: MAXimum Last Access Date - exclude files unused since n.
  60.           /MINLAD:n :: MINimum Last Access Date - exclude files used since n.
  61.                        (If n < 1900 then n = n days, else n = YYYYMMDD date).

  62.                 /XJ :: eXclude Junction points. (normally included by default).

  63.                /FFT :: assume FAT File Times (2-second granularity).
  64.                /DST :: compensate for one-hour DST time differences.

  65.                /XJD :: eXclude Junction points for Directories.
  66.                /XJF :: eXclude Junction points for Files.

  67. ::
  68. :: Retry Options :
  69. ::
  70.                /R:n :: number of Retries on failed copies: default 1 million.
  71.                /W:n :: Wait time between retries: default is 30 seconds.

  72.                /REG :: Save /R:n and /W:n in the Registry as default settings.

  73.                /TBD :: wait for sharenames To Be Defined (retry error 67).

  74. ::
  75. :: Logging Options :
  76. ::
  77.                  /L :: List only - don"t copy, timestamp or delete any files.
  78.                  /X :: report all eXtra files, not just those selected.
  79.                  /V :: produce Verbose output, showing skipped files.
  80.                 /TS :: include source file Time Stamps in the output.
  81.                 /FP :: include Full Pathname of files in the output.
  82.              /BYTES :: Print sizes as bytes.

  83.                 /NS :: No Size - don"t log file sizes.
  84.                 /NC :: No Class - don"t log file classes.
  85.                /NFL :: No File List - don"t log file names.
  86.                /NDL :: No Directory List - don"t log directory names.

  87.                 /NP :: No Progress - don"t display percentage copied.
  88.                /ETA :: show Estimated Time of Arrival of copied files.

  89.           /LOG:file :: output status to LOG file (overwrite existing log).
  90.          /LOG+:file :: output status to LOG file (append to existing log).

  91.        /UNILOG:file :: output status to LOG file as UNICODE (overwrite existing log).
  92.       /UNILOG+:file :: output status to LOG file as UNICODE (append to existing log).

  93.                /TEE :: output to console window, as well as the log file.

  94.                /NJH :: No Job Header.
  95.                /NJS :: No Job Summary.

  96.            /UNICODE :: output status as UNICODE.

  97. ::
  98. :: Job Options :
  99. ::
  100.        /JOB:jobname :: take parameters from the named JOB file.
  101.       /SAVE:jobname :: SAVE parameters to the named job file
  102.               /QUIT :: QUIT after processing command line (to view parameters).
  103.               /NOSD :: NO Source Directory is specified.
  104.               /NODD :: NO Destination Directory is specified.
  105.                 /IF :: Include the following Files.
複製代碼

雖然有使用說明,但實際上的操作還是要摸索一下才知道怎麼組合適當的參數。我的需求是把 硬碟 F: 的全部資料 (含資料夾與檔案) 複製到硬碟 J:,保留檔案時間,也不刪除 F: 上的資料。組合出來的參數如下:
  1. robocopy F: J: /e /dcopy:t /xo /xa:sh /xj /unicode /eta /xd "$RECYCLE.BIN" "System Volume Information" "RECYCLER"
複製代碼

F: :: 檔案來源 硬碟 F:

J: :: 檔案目的地 硬碟 J:

/e :: 複製所有的子資料夾,包含空的資料夾。

/dcopy:t :: 保留所有檔案與資料夾的時間戳記。

/xo :: 如果已有相同的檔案,且時間相同或較舊就跳過。注意是 "叉歐",不是 "叉零"。

/xa:sh :: 跳過屬性為 s (系統) 與 h (隱藏) 的檔案。因為是複製整個硬碟,預設會連 Windows 隱藏的系統檔都複製過去,所以要排除。

/xj :: 跳過 NTFS junction 檔案

/unicode :: 畫面上的進度資訊以 unicode 顯示,若是操作非中文及英文檔名,這參數可以正確顯示名稱。有無開啟並不影響檔案複製、移動等操作,只是差在畫面顯示正不正確而已。

/eta :: 顯示預計完成時間。

ps. 這個指令跟其他的 dos / windows 指令不一樣的地方是檔案名稱並不是接在資料夾後面的,請參見本文最前面列出的指令格式。舉例來說,要複製 F:MyDocuments 底下的 .txt、.bmp、.jpg 到 J:ackup,那指令要組合成…
robocopy F:MyDocuments J:ackup *.txt *.bmp *.jpg

反過來說,如果不想複製這些檔案,要加上參數 /xf
robocopy F:MyDocuments J:ackup  *.txt *.bmp *.jpg

大致上就是醬,這支指令能組合的參數變化還有非常非常多,是很實用的工具。



「用Android 就來APK.TW」,快來加入粉絲吧!
Android 台灣中文網(APK.TW)

評分

參與人數 1碎鑽 +1 幫助 +1 收起 理由
koalabear168 + 1 + 1 非常讃

查看全部評分

收藏收藏3 分享分享 分享專題
用Android 就來Android 台灣中文網(https://apk.tw)
回覆

使用道具 舉報

沙發
clark407 | 收聽TA | 只看該作者
發表於 2016-7-10 09:30
請問有無
複製檔案是留存新建檔創建日
但還可查原始檔創建日的方法
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

板凳
 樓主| efun | 收聽TA | 只看該作者
發表於 2016-7-10 12:59
clark407 發表於 2016-7-10 09:30
請問有無
複製檔案是留存新建檔創建日
但還可查原始檔創建日的方法

什麼都不做, 就只單純的複製,系統預設就是這樣呀

日期會變新檔案的日期, 而"修改日期"就是原始檔創建日
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則