พิมพ์ไปยังรายชื่อไฟล์ประเภทสื่อและความยาวที่สำคัญที่สุด


2

ฉันกำลังมองหาวิธีง่ายๆในการพิมพ์ไปยังไฟล์ข้อมูลต่อไปนี้ในไดเรกทอรีที่เต็มไปด้วยไฟล์วิดีโอ:

ชื่อไฟล์, ประเภทไฟล์, ความยาววิดีโอ (เป็นวินาที)

ฉันรู้ว่าสองคนแรกนั้นง่ายมากมันเป็นบิตที่สามของข้อมูลที่ฉันมีปัญหาในการค้นหาวิธีอัตโนมัติเพื่อให้บรรลุ

คำตอบ:


1

คุณอาจจะติดตั้งอรรถประโยชน์บรรทัดคำสั่งexiftool

จากนั้นเปิดไฟล์ข้อความและคัดลอก / วางสคริปต์ทุบตีต่อไปนี้:

#!/bin/sh

find "~/Movies/" -name "*" -not -name ".*" -type f | while read file
do
    FILETYPE=$(exiftool  -p "\$FileType" "${file}")
    FPS=$(exiftool  -p "\$FrameRate" "${file}")
    TOTALFRAMES=$(exiftool  -p "\$FrameCount" "${file}")
    DURATION=$[TOTALFRAMES*FPS]
    echo ${file} ${FILETYPE} ${DURATION} > output.txt
done

แทนที่~ / Movies /ด้วยพา ธ แบบเต็มที่มีไฟล์ภาพยนตร์และoutput.txtด้วยชื่อไฟล์ผลลัพธ์ของคุณ

บันทึกไฟล์ไปยังโฟลเดอร์บ้านของผู้ใช้เช่น 'meta_generator' หรือตามชื่อที่คุณต้องการ

จากนั้นให้เปิดไฟ /Utilities/Terminal.app และประเภท:

chmod +x meta_generator
./meta_generator

แก้ไข : ฉันเพิ่งเห็นว่าคุณต้องการความยาวเป็นวินาทีดังนั้นฉันจึงเปลี่ยนแท็ก Duration

ด้วยการคูณอัตราเฟรมและจำนวนเฟรมทั้งหมดคุณจะได้รับวินาทีที่ต้องการ ..

แต่คุณอาจพบวิธีที่ง่ายกว่านี้ :)


คุณสามารถตัดออก DIR = บรรทัดและแทนที่ "$ {DIR}" ด้วย ~ / ภาพยนตร์ / ถ้าคุณต้องการ
Jason Salaz
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.