유닉스에서 파일을 일괄 복사/이동하는 방법이 있습니까? 이것이 옵션일 수 있다고 생각 cp/mv
하지만 그렇게 할 수 있는 방법을 찾을 수 없습니다.
답변1
cp
mv
파일을 복사하고 파일을 이동하는 데 각각 훌륭한 도구입니다 . ) 또는 와 같은 쉘 구조와 for file in *; do ...; done
결합하면 find
훨씬 더 강력해집니다.
귀하의 목적을 올바르게 이해했다면 다음과 같은 파일을 추출한 것입니다.
somedir/file.png
somedir/file.txt
다음과 같이 모든 파일을 상위 디렉토리로 이동하려고 합니다.
file.png
file.txt
디렉토리에 있다고 가정하고 쉘 와일드카드를 사용하면 다음을 somedir
사용할 수 있습니다.
mv * ../
*
현재 디렉터리의 모든 파일로 확장되는 전역 패턴입니다. 숨겨진 파일( .
파일 이름 앞에 이름이 있는 파일 및 디렉터리)이 있는 경우 shopt -s dotglob
in bash
)을 사용하세요.
나는 find
이것을 전에 언급한 적이 있다. 다음과 같은 파일 트리가 있는 경우:
somedir/000.txt
somedir/a/001.txt
somedir/a/004.txt
somedir/b/003.txt
somedir/b/002.txt
somedir/whatever/somethingunique.txt
디렉토리(예: )의 모든 파일을 이동하려면 다음 seconddir
을 사용하세요.
find -exec mv {} seconddir/ \;
이는 모든 파일 이름이 고유하다고 가정합니다. 그렇지 않으면 파일을 덮어쓰게 됩니다.
답변2
넌 괜찮게 빠져나갈 수도 있어이름을 바꿔라일괄 처리에 더 적합하기 때문입니다.