여러 파일을 Linux의 하위 디렉터리로 이동

여러 파일을 Linux의 하위 디렉터리로 이동

나는 이와 같은 디렉토리 구조를 가지고 있습니다.

dir
├── dirA
│   └── file1
│   └── subdir
└── dirB
    └── file2
    └── subdir

file1을 dirA/subdir로 이동하고 file2를 dirB/subdir로 이동해야 합니다. Linux에서 이 작업을 어떻게 수행할 수 있나요?

답변1

스크립트나 단일 명령을 사용하여 이 작업을 수행할 수 dir있습니까 ?mv dirA/file1 /dirA/subdir/mv dirB/file2 /dirB/subdir/

제이슨 C.

답변2

이것은 다양한 저장소 디렉터리의 다양한 .yml 파일을 각 저장소 디렉터리의 "task" 하위 디렉터리로 이동하는 데 효과적이었습니다.

for dir in */; do mv -- "$dir"*.yml "${dir}tasks/"; done

답변3

그누 찾기

find dir -mindepth 2 -maxdepth 2 -type f -execdir sh -c 'mv -t ./*/ "$1"' find-sh {} \;

find dir \
  -mindepth 2 -maxdepth 2 -type f \
  -execdir sh -c '
        mv -t ./*/ "$1"
  ' find-sh {} \;

원래 디렉토리 구조

dir
├── dirA/
│   ├── fileA
│   └── subdir/
│       ├── e
│       ├── q
│       └── w
└── dirB/
    ├── fileB
    └── subdir/
        ├── c
        ├── x
        └── z

이동 작업 후

dir
├── dirA/
│   └── subdir/
│       ├── e
│       ├── fileA
│       ├── q
│       └── w
└── dirB/
    └── subdir/
        ├── c
        ├── fileB
        ├── x
        └── z

답변4

셸에서 다음 명령을 실행합니다.

mv file1 /dir/dirA
mv file2 /dir/dirB**

mv는 이동을 의미합니다.

mv "filename.txt" "location/where/you/want/file/to/go"

관련 정보