Mv
僅使用 mv 將目錄移動到另一個目錄中
我剛剛遇到了這種奇怪的情況:我想做相當於將一個目錄拖到另一個目錄中(移動它)。GUI 的瑣碎日常任務。
這是我的樹:
. ├── assemble.py ├── Basic Information Retrieval.ipynb ├── Basic Information Retrieval.tex ├── Book │ ├── book.aux │ ├── book.log │ ├── Book_master.tex │ ├── book.out │ ├── book.pdf │ ├── book.tex │ ├── book.toc │ ├── build.sh │ ├── chapter_0.tex │ ├── chapter_1.tex │ ├── chapter_2.tex │ ├── chapter_3.tex │ ├── chapter_4.tex │ ├── chapter_5.tex │ ├── Cosine Similarity_files │ │ ├── Cosine Similarity_17_0.png │ │ └── Cosine Similarity_22_0.png │ ├── Language Models_files │ │ └── Language Models_5_0.png │ └── nb_preamble.tex ├── convert_to_latex.sh ├── convert_to_pdf.sh ├── corpus_zika ├── Cosine Similarity_files │ ├── Cosine Similarity_17_0.png │ └── Cosine Similarity_22_0.png ├── Cosine Similarity.ipynb ├── Cosine Similarity.tex ├── Dicionario_zika.dict ├── Language Models_files │ └── Language Models_5_0.png ├── Language Models.ipynb ├── Language Models.tex ├── Probabilistic Text Models.ipynb ├── Probabilistic Text Models.tex ├── README.md ├── Topic Modeling.ipynb └── Topic Modeling.tex
我想
Cosine Similarity_files
進入Book/
,如果它已經存在,最終覆蓋它。我發出自然命令:mv Cosine\ Similarity_files Book/
我收到消息
Directory not empty
WTF!?但如果我要求它更深一層,它會變得更好:mv Cosine\ Similarity_files Book/Cosine\ Similarity_files
它盡職盡責地做了以前不會做的事情!它將源目錄寫入目標目錄!!WTF²!?!
這是為什麼?這有什麼意義嗎?
當您執行時,
mv Cosine\ Similarity_files Book/
沒有任何反應,因為目錄中存在同名的非空Book
目錄。正如上面評論中所說的don_crissti,當你執行時
mv Cosine\ Similarity_files Book/Cosine\ Similarity_files
,它移動Cosine\ Similarity_files
到Book/Cosine\ Similarity_files/Cosine\ Similarity_files
如果要覆蓋要移動的目錄中的任何現有文件,則必須使用
-f
or-i
選項。-f --force Remove existing destination files and never prompt the user. -i --interactive Prompt whether to overwrite each existing destination file, regardless of its permissions. If the response does not begin with `y' or `Y', the file is skipped.
例子:
mv -f Cosine\ Similarity_files Book/
注意:
-f
不會覆蓋或合併您嘗試移動的目錄中的目錄。它只會覆蓋文件。如果要合併或覆蓋目錄,可以使用
rsync
該--remove-source-files
選項。有關更多資訊,請查看此答案。