PDF를 jpg로 변환하고 동일한 이름을 유지하고 썸네일을 만든 다음 이름을 바꾸시겠습니까?

PDF를 jpg로 변환하고 동일한 이름을 유지하고 썸네일을 만든 다음 이름을 바꾸시겠습니까?

pdf네 단계를 적용해야 하는 파일(3308)이 많습니다 .

1) 모두 변환해야합니다jpg

ImageMagick을 사용하여 온라인에서 이 작은 스크립트를 찾았습니다.PDF를 jpg로 일괄 변환

이렇게 하고 싶지만 파일 이름은 이전과 동일합니다. foo.pdf=> foo.jpg 또한 모든 이미지를 "Scenes" 폴더에 저장하고 싶습니다.

2) 그런 다음 612x792로 크기를 조정해야 합니다.

3) 그런 다음 255x330 크기의 썸네일을 만들어야 합니다.

4) 마지막으로 이름을 바꿔야 합니다. 사실 저는 csv그들의 이름과 새 이름이 포함된 파일을 가지고 있습니다.

다음은 선의 몇 가지 예입니다.
각 줄은 "실제 이름" 파일 "쉼표" "새 이름"에 해당합니다. 파일당 한 줄씩 총 3308줄이 있습니다.

current_name,new_name
foo,bar
PS130_1060,55-large

보시다시피 두 파일 모두 jpg포맷되어 있기 때문에 확장명이 표시되지 않습니다.

완전히 길을 잃었습니다. 4개의 스크립트를 사용하는지 아니면 하나의 스크립트에서 사용할 수 있는지 모르겠습니다. 나는 정기적으로 PHP로 작업하지만 변화를 위해 bash를 수행하고 싶었지만 약간 덥습니다.

도와주세요?

답변1

다음과 같이 시작할 수 있습니다:

for i in "$@"; do
  dst="${i%pdf}jpg"
  convert "$i" -resize 612x792 "$dst"
  convert "$i" -resize 255x330 "${i%.pdf}_thump.jpg"
done

그리고 전화해

$ bash my_script.sh *.pdf

이름을 바꾸려면 다른 스크립트를 사용할 수 있습니다. 예시 .csv 파일을 이해할 수 없습니다. 3개의 파일에 3줄이 포함되어 있나요? 글쎄요.

다음 명령줄을 사용하여 파일 이름을 바꿀 수 있습니다.

$ awk -F, '{ system("echo mv \"" $1 "\" \"" $2 "\"")  }' myrename.csv

echo ...$1Awk는 라인의 첫 번째 필드 값과 $2두 번째 필드의 값인 각 라인에 대해 명령을 실행합니다 . \"파일 이름에 공백이 포함된 경우 인용이 필요합니다. 필드 구분 기호로 쉼표를 사용하도록 -F,지시합니다 .awk

echo이 명령을 테스트한 경우 삭제 하여 실제로 파일 이름을 바꿀 수 있습니다 . 실수로 기존 파일을 덮어쓰는 것을 방지하기 -n위해 추가할 수 있습니다 .mv

관련 정보