rsync
có lẽ sẽ là một lựa chọn tốt hơn ở đây Nó đơn giản như rsync -a subdir/ ./
.
Cây thử nghiệm của tôi ở filename
: contents
định dạng:
./file1:root
./file2:root
./dir/file3:dir
./dir/file4:dir
./subdir/dir/file3:subdir
./subdir/file1:subdir
Chạy rsync
:
$ rsync -a -v subdir/ ./
sending incremental file list
./
file1
dir/
dir/file3
Cung cấp:
./file1:subdir
./file2:root
./dir/file3:subdir
./dir/file4:dir
./subdir/dir/file3:subdir
./subdir/file1:subdir
Và sau đó, để mô phỏng mv
, có lẽ bạn muốn xóa thư mục nguồn:
$ rm -r subdir/
Tặng:
./file1:subdir
./file2:parent
./dir/file3:subdir
./dir/file4:dir
Nếu điều này là sai, bạn có thể vui lòng cung cấp một ví dụ tương tự (ví dụ: sử dụng cây thử nghiệm của tôi từ gần đầu câu trả lời này) với kết quả mong muốn không?
mv -f
chưa