フォルダの内容を2つのディレクトリレベルの上に移動する

フォルダの内容を2つのディレクトリレベルの上に移動する

mvファイルを2つのディレクトリレベルに移動するコマンドを作成しようとしています。

したがって、フォルダの順序が次のような場合は、あるディレクトリから別のディレクトリに移動し~/Test/2020-08-01/001/002/file.txtたいと思います。file.txt0022020-08-01

マイホームディレクトリにこのコマンドを入力すると、mv ~/Test/2020-08-01/001/002/* ../..エラーメッセージが表示されます。mv: cannot move '/home/user/Test/2020-08-01/001/002/file1.txt' to '../../file1.txt': Permission denied

「許可拒否」エラーが発生する理由を理解できず、sudoとは関係がないようです。私も私が混乱している場合に備えてsudoを試してみたくありません。

誰でも洞察力があれば教えてください。ありがとうございます。

答え1

問題は、../..あなたの命令があなたの命令に関連しているということです現在の目次。現在のディレクトリがある場合、/home/userこれは../..ディレクトリ階層のルート(権限のないユーザーが書き込めない場所)を示します。

file.txt~/Test/2020-08-01/001/002からに移動するには、~/Test/2020-08-01次を使用します。

mv ~/Test/2020-08-01/001/002/file.txt ~/Test/2020-08-01

相対ディレクトリパスを使用するには、まず正しいディレクトリにあることを確認してから移動します。

cd ~/Test/2020-08-01/001/002
mv file.txt ../..

または、

cd ~/Test/2020-08-01
mv 001/002/file.txt .

...またはその組み合わせ。

関連情報