回答:
ターミナルを開き、次のコマンドを実行します。
mv -v ~/Downloads/* ~/Videos/
すべてのファイルとフォルダーをダウンロードフォルダーからビデオフォルダーに移動します。
フォルダではなくすべてのファイルを移動するには:
すべてのファイル(フォルダーではない)をダウンロードフォルダーからビデオフォルダーに移動する場合は、このコマンドを使用します
find ~/Downloads/ -type f -print0 | xargs -0 mv -t ~/Videos
サブフォルダーからではなく、ダウンロードフォルダーからのみファイルを移動するには:
Downloadsフォルダーからすべてのファイルを移動し、Downloadフォルダー内のフォルダー内のファイルは移動しない場合は、次のコマンドを使用します。
find ~/Downloads/ -maxdepth 1 -type f -print0 | xargs -0 mv -t ~/Videos
ここで、-maxdepth
option 1
は、findコマンドで指定されたディレクトリのみを検索する方法を指定します。あなたは使用して試すことができ2
、3
テストすることも。
詳細な説明については、Ubuntu findのマンページを参照してください
-print0 | xargs -0 mv -t ~/Videos
より効率的に行うことができます-exec mv -t ~/Videos \{\} \+
:-)
mv -v ~/Downloads/* ~/Videos/
隠しファイルでは動作しません
mv ~/Downloads/* ~/Videos
目的のディレクトリ内のサブフォルダを含むすべてのファイルを移動しますmv
。あなたがしたい場合cp
(コピー)、またはrm
あなたが必要となります(削除)-r
サブフォルダを含めるように(再帰的)オプションを選択します。
mv
サブフォルダーを含めるための再帰オプションは必要ありません。名前の変更にも使用できます。
簡単な場合:
mv ~/Downloads/* ~/Videos
ドット(非表示)ファイルも移動する場合は、dotglobシェルオプションを設定します。
shopt -s dotglob
mv ~/Downloads/* ~/Videos
これにより、シェルオプションセットが残ります。
一度ドットグロブを使用するには、サブシェルでコマンドを実行します。
(shopt -s dotglob; mv ~/Downloads/* ~/Videos)
(shopt -s dotglob; mv ~/Downloads/* ~/Videos)
は、コンテンツ(隠しファイルを含む)のみを移動(カット)します。この場合、起点フォルダーと宛先フォルダーの両方が既に存在している必要があります。最後に、起点ディレクトリは空になります。
を使用することで可能rsync
です、例えば:
rsync -vau --remove-source-files src/ dst/
どこ:
-v
、--verbose
:冗長性を増やします。
-a
、--archive
:アーカイブモード。等しい-rlptgoD
(なし-H
、-A
、-X
)。
-u
、--update
:受信側で新しいファイルをスキップします。
--remove-source-files
これは、転送の一部であり、受信側で正常に複製されたrsync
ファイル(非ディレクトリを意味する)を送信側から削除するよう指示します。
ルート権限を持っている場合は、接頭辞を付けsudo
て、潜在的な権限の問題を無効にします。
mv
コマンドを使用してファイルの名前を変更する方法と同じように、コンテンツのあるディレクトリまたはないディレクトリを新しい名前に移動するには:
mv -T dir1 dir2
どこ:
-T
宛先を通常のファイルとして扱いますdir1
ディレクトリの元の名前ですdir2
ディレクトリの新しい名前です注意:dir2
存在する必要はありません。
これにより誰かが多くの時間を節約できることを願っています。この前に、新しい名前でディレクトリを作成し、ディレクトリの内容を以前に作成したディレクトリに移動します。
サブディレクトリに使用
このコマンドは、多くのファイルがターゲットディレクトリのサブフォルダに保存されている場合に便利ですDownloads/mp4
。この例では、実行mv -T Downloads/mp4 Videos
するとmp4
サブフォルダーが削除され、内部に含まれるすべてのファイルがビデオフォルダーに移動します。
dir1
削除されることを示すために、この回答に例を追加しました。この予防策とは別に、この回答は日常の使用に適した何かを指摘しています。
mv fileA fileB
の-T
フラグは宛先/ディレクトリをファイルとして扱い、名前を変更します。
cd folderNamehere
pwd
ます。これにより、移動するディレクトリも印刷されます。cd folderNamehere
mv *.* typeAnswerFromStep2here
これにより、すべてのファイルがそのディレクトリから他のディレクトリに移動します。
foo.txt
、bar.
およびbar
その両方でbar.
、bar
移動されません。*
代わりに*.*
を使用すると、その面倒を見ることができます。ただし、どちらの場合も、次のような隠しファイル.foobar
は移動されません。
それを試してみてください
find ~/Desktop -type f -iname "*.mp4" -exec mv {} ~/Videos \;
引数-typeを指定した-typeでは、このステートメントでtype file。を指定できます。これは、ディレクトリを意味する-dを使用した場合の平均file.ifです。
-iname: ファイルを探す最も一般的で明白な方法は、-name引数を使用することです。大文字と小文字の区別が不明な場合は、-iname引数を使用できます
mv {} そして最後にターゲットディレクトリを指定し、mv {}引数を使用してそこにファイルを移動します
files
が、人々はあなたに移動方法だけでfiles
なくfolders
、同様に移動する方法を示しています。それは大丈夫ですか?