2012-04-01 28 views
9

如何將_vim的整個文件夾移動到〜/ .vim中?Bash:如何將文件夾中的所有內容移動到一個級別?

$ mv ~/.vim/_vim/ ~/.vim 
mv: `/home/kithokit/.vim/_vim/' and `/home/kithokit/.vim/_vim' are the same file 

我不能那樣做。 基本上就是我想要做的就是把所有的內容裏面_vim文件夾最多的一個級別,這是在~/.vim/

+0

@Mat爲什麼downvote?爲什麼關了 ? – 2012-04-01 11:45:37

+0

我沒有這些。 – Mat 2012-04-01 11:46:07

+0

不是編程問題 - 屬於http://superuser.com – 2012-04-01 11:47:23

回答

17
mv ~/.vim/_vim/* ~/.vim 

猛砸擴展*這樣的命令現在讀取

mv ~/.vim/_vim/file_1 ... ~/.vim/_vim/file_n ~/.vim 
+0

thx它的工作原理!我錯過了* – 2012-04-01 12:09:51

+0

這將跳過點文件(如「.config」)。 – 2015-08-11 21:57:02

+0

@Dunes準確地說,它不會移動_all_目錄內容(按要求)。我認爲值得一提。 – 2015-08-11 22:14:22

0
$ mv ~/.vim/_vim/* ~/.vim/ 
$ rmdir ~/.vim/_vim 
1

如果您想小心移動隱藏點文件以及常規,可見文件,也不要剽竊已在~/.vim/中的任何文件,請執行以下操作:

for A in $(find -mindepth 1 -maxdepth 1 ~/.vim/_vim) ; do B=$(basename $A) ; mv -iv ~/.vim/_vim/$B ~/.vim/ ; done 

很可能,你會希望跟着rmdir ~/.vim/_vim

請參閱下面的評論中的@Dunes的建議。

+1

您可以使用xargs使命令更簡單。 'find -mindepth 1 -maxdepth 1〜/ .vim/_vim | xargs mv -iv -t〜/ .vim /'。你也可以使用'-u'而不是'-i'。 – Dunes 2012-04-01 12:42:44

+0

@Dunes:很酷。我不知道'-t'選項,並且從上次使用'xargs'已經有十年了。我喜歡。 – thb 2012-04-01 12:48:23

相關問題