ฉันจะแยกหน้าแรกของไฟล์ PDF หลาย ๆ ชุดได้อย่างไร


0

ฉันรู้ว่ามีหัวข้ออื่นที่มีคำตอบมากมายสำหรับคำถามนี้; อย่างไรก็ตามฉันเป็นมือใหม่และมากที่พูดพล่อยๆของฉัน ฉันพยายามเรียนรู้ :)

อย่างไรก็ตามฉันได้ติดตั้ง ghostscript แล้วและพยายามเรียกใช้สองสามครั้งโดยใช้สคริปต์นี้

for file in *.pdf ; do gs -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite \
         -sOutputFile="${file%.pdf}-page1.pdf" -dFirstPage=1 -dLastPage=1 "$file" ;

ผมได้สคริปต์ที่จากที่นี่

ฉันไม่รู้จริงๆว่าจะใส่ชื่อไดเรกทอรีที่ฉันต้องการให้โปรแกรมแยกชุดข้อมูลจากหรือชื่อไฟล์ออกและหรือผู้กำกับเอาท์พุท ฉันรู้ว่านี่เป็นสิ่งพื้นฐานสำหรับคุณส่วนใหญ่ แต่ถ้ามีใครสามารถช่วยฉันออกคุณจะช่วยฉันได้หลายปี

ขอบคุณ!

คำตอบ:


0

ไดเรกทอรีที่ไฟล์ PDF อยู่นั้นเป็นไดเรกทอรีปัจจุบันเนื่องจากfor files in *.pdf ; ...ไม่ได้ระบุเส้นทางไดเรกทอรีสำหรับไฟล์ที่ตรงกัน

ไฟล์เอาต์พุตเกิดขึ้นจาก"$file"การbashขยาย"${file%.pdf}-page1.pdf"ซึ่งจะลบออก.pdfจากจุดสิ้นสุดของชื่อไฟล์และแทนที่ด้วย-page1.pdfดังนั้นตัวอย่างเช่นreport.pdfจะสร้างไฟล์เอาต์พุตreport-page1.pdfในไดเรกทอรีเดียวกัน

คุณสามารถเพิ่มเส้นทางไดเรกทอรีในส่วนforคำสั่งเช่นfor files in SourceDir/*.pdf ; ...

คุณสามารถเปลี่ยนสตริงการแทนที่; หรือคุณสามารถผนวกไดเรกทอรีได้แม้ว่าการทดแทนจะซับซ้อนกว่านี้หากคุณใช้เส้นทางไดเรกทอรีในส่วนforคำสั่ง

คุณควรอ่านข้อมูลเพิ่มเติมเกี่ยวกับการขยายพารามิเตอร์ในbashคู่มือ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.