하나의 명령을 사용하여 이름에 "t_1"이 포함된 모든 파일을 다른 디렉토리에 어떻게 복사합니까?
답변1
사용
cp /path/to/files/*t_1* /path/to/destination
아니면 그냥
cp ./*t_1* /path/to/destination
파일이 현재 디렉터리에 있는 경우.
또는,
for f in ./*t_1*; do
cp "$f" /path/to/destination
done
현재 디렉터리에 패턴과 일치하는 파일이 수천 개 있더라도 확실히 작동합니다.
답변2
빠른 수정은 다음과 같습니다.
find ./ -name '*t_1*' -exec mv '{}' ./ \;
이 코드는 모든 파일(파일 이름에 검색 패턴 포함)을 계층 구조에서 한 수준 위로 이동합니다.
예를 들어, 모든 't_1' 파일이 다음 위치에 저장되어 있다고 가정해 보겠습니다./홈/데스크탑/예배 규칙서. 그럼 그냥 가세요/집/터미널에서 이 명령을 실행하세요. 모든 't_1' 파일이 다음에서 이동됩니다./홈/데스크탑/에게/집/예배 규칙서.
파일 이름의 t_1 위치에 관계없이 모든 파일이 복사됩니다.