Answers:
找 。-maxdepth 1 -exec mv {} .. \;
这也将移动隐藏文件。
你会得到这样的信息:
mv:不能动'。' 到`../。':设备或资源忙
当它试图移动.
(当前目录)但不会造成任何伤害。
-maxdepth 1
用来确定。
我来到这里是因为我也是这个主题的新手。出于某种原因,上面没有为我做的伎俩。我将所有文件从目录移动到其父目录所做的是:
cd to/the/dir
mv * ../
(cd ${ANDROID_NDK_HOME}/android-ndk-r14b/ && mv * ../)
在shell中输入:
mv *.* ..
这会将所有文件移动一级。
角色*
是通配符。因此,*.deb
将移动所有.deb文件,并将Zeitgeist.*
Zeitgeist.avi和Zeitgeist.srt移动一个文件夹,因为当然,这..
表示父目录。
要移动包括文件夹等在内的所有内容,只需使用*
而不是*.*
*
不*.*
包括目录
在bash中你可以使用 shopt -s dotglob 来*匹配所有文件并简单地移动它们
shopt -s dotglob; mv * ..
这不是最佳解决方案,因为在您更改之前,设置对于shell是永久性的
shopt -u dotglob
但我觉得很高兴知道。
(shopt -s dotglob && mv * ..)
。这样,该选项只对该子shell本地。
一种不会导致错误并且每次都有效的方法:
ls -1A . | while read -r file
do
mv "./${file}" ..
done
将所有文件和文件夹移动到Linux中的父目录很简单。
转到该文件夹并使用此命令:
mv * /the full path
例如,如果您的文件和文件夹如下:
/home/abcuser/test/1.txt
2.txt
3.jpg
4.php
1folder
2folder
通过cd转到该文件夹:
cd /home/abcuser/test
mv * /home/abcuser
您的所有文件和文件夹都将移动到abcuser文件夹(父目录)。
/the full path
在Linux中不起作用,你必须使用转义空间/the\ full\ path
。
无需更改目录。只需在路径末尾包含*:
mv /my/folder/child/* /my/folder/
上面只移动非隐藏文件。要仅移动隐藏文件,请使用。*
mv /my/folder/child/.* /my/folder/
以上两个可以组合成一个命令:
mv /my/folder/child/{.,}* /my/folder/
另请参阅: 如何通过*将包含隐藏文件的所有文件移动到父目录中
切换到子目录并执行以下命令以复制或移动文件。
例如:a是父目录,b是子目录,我们希望将所有文件从b移动/复制到(子目录到父目录)。
cd b
cp * ..
mv * ..