a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > BAT > 正文

cmd move命令 移動文件(夾)

2020-07-26 20:24:44
字體:
供稿:網(wǎng)友
很多時候,我看到有人在回復(fù)“如何把文件從A處移動到B處”的時候,給出的建議往往是:先用copy命令復(fù)制文件,然后用del和rd刪除文件和文件夾。回復(fù)者根本沒有想到,他給出的操作流程太繁瑣了,他根本沒有意識到,系統(tǒng)已經(jīng)提供了直接移動文件的命令move!

  move的使用非常簡單,基本格式為 move A B。在這里,A表示你想要執(zhí)行移動操作的文件或文件夾,B表示A被移動后保存的位置,而A可以使用相對路徑,也可以使用絕對路徑,甚至可以使用通配符,但是,在move執(zhí)行移動文件的功能的時候,B只能是目錄路徑,而不能是文件路徑――很難想象,你要把a.txt文件移動到b.txt文件里去,操作系統(tǒng)會做何感想。比如:move a.txt d:/test,表示把當(dāng)前目錄下的a.txt移動到d:/test目錄下;move c:/test.txt d:/,表示把C盤根目錄下的test.txt文件移動到D盤根目錄下;move c:/*.txt d:/表示把C盤根目錄下的文本文件移動到D盤根目錄下。

另外,需要特別注意的是:move不能跨分區(qū)移動文件夾。感謝zqz0012005的提醒。

  上面已經(jīng)說過,如果你想把a.txt移動到b.txt文件里去,操作系統(tǒng)肯定會很不高興。

  如果你確實要這么干呢?

  move a.txt b.txt!

  你會發(fā)現(xiàn),對于你的胡纏蠻搞,操作系統(tǒng)也沒攔著你,它很順從地執(zhí)行了你的命令,但是,結(jié)果并沒有像你所期望的那樣,把a.txt放進b.txt里面去,而是把a.txt改名為b.txt了。

  原來,在 move A B 這樣的命令中,move具備移動文件(夾)的基本功能,還兼有重命名文件(夾)的功效,具體起什么作用,視情況決定:

  1、如果A、B同為文件夾名,則把A移動到B目錄下;
  2、如果A為文件名,
    ① B為文件夾名的時候,將把A移動到B目錄下;
   ?、?B為文件名的時候,將把A重命名為B;如果B所在的位置為另一目錄,則表示在把A移動到B所在的目錄下的同時,重命名為B。

  一旦你明白了move的這些用法,重命名文件的時候,你將會很容易在ren和move之間做取舍:如果只是單純地重命名文件,則ren和move任選其一即可,只是move的寫法顯得有點怪異而已;如果在要移動文件之后,還要重命名文件,選擇 move c:/test.txt d:/abc/1.txt 的寫法將一步到位,而先 move c:/test.txt d:/abc 之后,再ren d:/abc/test.txt 1.txt 的寫法將顯得繁瑣,最不可取的做法,是先copy,再del/rd,最后再ren,這是追求代碼至精至簡的人士所不能容忍的鋪張浪費行為。

  有時候,move的過程并不會一帆風(fēng)順,比較常見的情形是:目的地有重名文件存在,系統(tǒng)找不到指定的文件。

  先說重名文件的情況。

  如果有重名文件出現(xiàn),move不會成功,它會很體貼地詢問你:改寫××嗎?(Yes/No/All):其中,××表示目的地的重名文件。如果選擇Yes,將覆蓋重名文件;如果選擇No,則放棄move操作;如果選擇All,則在批量move的時候,如果存在同名文件,將不再詢問是否覆蓋,而是直接覆蓋掉重名文件。

  如果你嫌跳出這個提示信息很麻煩,而你的真正目的是強行覆蓋所有的重名文件的話,給move加上個 /Y 的開關(guān),寫成 move /y A B就可以了――在cmd 窗口中,默認(rèn)情況下,move 是帶 /-y 開關(guān)的,也就是默認(rèn)會出現(xiàn)重名文件的提示信息,只不過這個默認(rèn)開關(guān)是可以省略的;而在批處理腳本中,move 默認(rèn)帶的是 /y 開關(guān),不會出現(xiàn)重名提示而直接覆蓋同名文件,和cmd窗口中的情形正好相反。


  再來看系統(tǒng)找不到指定文件的情況。

  有時候,你會很奇怪,move A B 的時候,A明明是存在的,為什么還要不知趣地提醒你:“系統(tǒng)找不到指定文件”呢?這不是在張口說瞎話么?

  不過,微軟也挺無辜的:出錯的情形太多了,要我對每一種出錯情形都給出明確具體的原因,我哪有那么大的神通呀?我們搞技術(shù)的也不容易啊,能提醒你找不到指定文件,我們已經(jīng)盡力了,您老就多多包涵一下吧。

  得了,我們還是自己動手找原因吧。

  原來,move沒有dir的神通,它不能夠識別出帶隱藏或系統(tǒng)屬性的文件,在這些文件面前,它成了瞎子,不過,這不能說move太無能,而是微軟為了安全起見,限制了很多危險命令對帶有隱藏或系統(tǒng)屬性的文件進行直接操作――del、ren都是這副德性;而rd命令,則屬于漏網(wǎng)之魚,是個例外,要不然,微軟的系統(tǒng)就不會有打補丁一說了。

  如何解決這一難題呢?

  沒辦法,只能老老實實地先用attrib命令去掉這些文件的隱藏或系統(tǒng)屬性,再來move吧。至于在寫批處理的時候,如何判斷哪些文件需要先attrib之后再move,哪些文件可以直接move,則不屬于本文要討論的范疇,還請讀者關(guān)注論壇的其他相關(guān)討論話題。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 欧美日韩精选 | 日韩欧美一区二区三区久久婷婷 | 国产精品欧美一区乱破 | 日韩免费高清视频 | 蜜桃久久久 | 密室大逃脱第六季大神版在线观看 | 狠狠色综合欧美激情 | 国产精品九九九 | 五月婷婷综合久久 | 成年免费视频黄网站在线观看 | 久久精品亚洲 | 成人在线一区二区三区 | 中国妞xxxhd露脸偷拍视频 | 黄色大片免费网址 | 狠狠艹 | 日韩色图在线观看 | 色丁香综合 | 一区在线看 | 成人在线一区二区 | 久久精品欧美一区二区三区不卡 | 欧美理伦片在线播放 | 性视频网站免费 | 欧美色综合一区二区三区 | 91色在线 | 亚洲欧美日韩在线 | 国产精品成人在线观看 | 香蕉av777xxx色综合一区 | 欧美一级欧美三级在线观看 | 欧美黄视频在线观看 | 国产亚洲精品久久 | 无码日韩精品一区二区免费 | 亚洲二区在线 | 欧美精品网站 | 在线播放亚洲 | 中文字幕网在线 | 色免费视频 | 国产视频久久久久久 | 精品久久一区二区三区 | 99精品国产在热久久 | 中文字幕不卡在线观看 | 国产日韩高清在线 |