การเปลี่ยนชื่อไฟล์ภาพหน้าจอเริ่มต้น


16

มีวิธีการเปลี่ยนคำนำหน้าชื่อไฟล์ภาพหน้าจอเริ่มต้น ( Cmd-Shift-4สกรีนช็อตชนิด) เป็นอย่างอื่นนอกเหนือจากค่าเริ่มต้นหรือไม่ ชื่อเริ่มต้นมีลักษณะดังนี้:

Screen Shot 2011-08-30 at 10.01.36 AM.png

แต่ฉันต้องการใช้สิ่งที่ชอบ:

screenshot_2011-08-30_100136.png

โดยทั่วไปดังนั้นฉันสามารถลบช่องว่างและขยะเนื่องจากมันน่ารำคาญในการเรียกดูไฟล์ใน Terminal วิธีง่ายๆในการเปลี่ยนคำนำหน้านี้ด้วยdefaults write com.apple.screencaptureคำสั่งสไตล์ใดคำสั่งหนึ่ง?


2
มีโอกาสใดบ้างที่เราจะให้คุณเลือกคำตอบที่เหมาะกับคุณ? (หรือแก้ไขเพื่อทราบสิ่งที่ดีกว่าที่คุณต้องการ?)
bmike

ข้อมูลที่คล้ายกัน: superuser.com/q/339702/247728
JayRizzo

คำตอบ:


11

คุณสามารถเปลี่ยน 'ภาพหน้าจอ' เป็น 'ภาพหน้าจอ' ด้วยคำสั่งต่อไปนี้

defaults write com.apple.screencapture name screenshot
killall SystemUIServer

หากคุณต้องการขุดลึกลงไปในเทอร์มินัลคุณสามารถบรรลุสิ่งที่คุณต้องการโดยทำสิ่งต่อไปนี้:

หมายเหตุ:ทำการสำรองข้อมูลไฟล์ใด ๆ ที่คุณเปลี่ยนแปลงในกรณีที่คุณทำผิดพลาด

  1. cd /System/Library/CoreServices/SystemUIServer.app/Contents/Resources/English.lproj
  2. ทำสำเนาของไฟล์ที่มีอยู่:
    sudo cp ScreenCapture.strings ScreenCapture.strings.old
  3. ป้อนรหัสผ่านผู้ดูแลระบบหากได้รับแจ้ง
  4. แปลงเป็นรูปแบบที่แก้ไขได้:
    sudo plutil -convert xml1 ScreenCapture.strings
  5. sudo vi ScreenCapture.strings

    ค้นหาบรรทัดต่อไปนี้:

    <key>%@ %@ at %@</key>  
    <string>%@ %@ at %@</string>  
    

    และแทนที่ด้วยบรรทัดต่อไปนี้:

    <key>%@ %@ at %@</key>  
    <string>%@_%@_%@</string>  
    
  6. แปลงกลับเป็นไบนารี:
    sudo plutil -convert binary1 ScreenCapture.strings
  7. killall SystemUIServer

ซึ่งรวมกับการเปลี่ยนแปลงครั้งแรกคุณจะได้รับสิ่งนี้:

screenshot_2011-08-30_10.01.36.png ซึ่งใกล้กับสิ่งที่คุณต้องการฉันคิดว่า


4
สิ่งนี้ดูเหมือนว่าจะไม่ทำงานใน OS X El Capitan น่าจะเป็นเพราะการป้องกันความสมบูรณ์ของระบบ
Radon Rosborough

7

ฉันแก้ไขอีกวิธีหนึ่ง การใช้ Automator ฉันตั้งค่า Folder Action เพื่อตรวจสอบโฟลเดอร์ shot screen และเปลี่ยนชื่อไฟล์ใหม่ ๆ ตามที่ฉันต้องการ

มีแนวทางที่ดีที่นี่พร้อมด้วยวิธีการและคำแนะนำที่คล้ายกัน


เวลาแฝงของวิธีการแบบอัตโนมัติคืออะไร ระยะเวลาที่บันทึก screencap ดั้งเดิมและไฟล์พร้อมใช้งานกับชื่อไฟล์ใหม่ มันคือ 1 วินาที 3 วินาที 12 วินาที
Cheeso

ระหว่าง 5 และ 7 วินาทีจากสกรีนช็อตจนกว่าชื่อไฟล์จะเปลี่ยน (ใน MacBook Pro ของฉันตั้งแต่ 2009)
Adrian B

ขอบคุณ! ระบุว่าฉันจะเขียนรหัสทุบตีเพื่อทำสิ่งนี้
Cheeso

4

ฉันได้ปิดการใช้งานทางลัดเริ่มต้นและกำหนดทางลัดให้กับคำสั่งนี้:

screencapture -i ~/Desktop/$(date +%Y%m%d%H%M%S).png

-i (แบบโต้ตอบ) เหมือนกับ⇧⌘4หรือ ⌃⇧⌘4


ดูเหมือนจะเป็นทางออกที่ตรงที่สุดสำหรับปัญหา แต่วิธีหนึ่งจะจับคู่ทางลัดไปยังคำสั่งได้อย่างไร ในกล่องโต้ตอบการตั้งค่าระบบจะมีข้อความระบุว่า "ป้อนชื่อที่แน่นอนของคำสั่งเมนูที่คุณต้องการเพิ่ม" คำสั่งของคุณไม่ใช่คำสั่งเมนูดังนั้น ... ?
Cheeso

1
@Cheeso ดูลิงก์ในคำตอบ คุณสามารถใช้แอปพลิเคชันเช่น FastScripts หรือ Alfred หรือสร้างบริการด้วย Automator
Lri

3

เปิดเทอร์มินัลแล้วป้อน:

$ sudo su

$ cd /System/Library/CoreServices/SystemUIServer.app/Contents/Resources/English.lproj

$ plutil -convert xml1 ScreenCapture.strings

$ nano ScreenCapture.strings

เปลี่ยนแปลง

<key>%@ %@ at %@</key>
    <string>%@ %@ at %@</string>
<key>.</key>
    <string>.</string>
<key>Screen Shot</key>
    <string>Screen Shot</string>

ถึง

<key>%@ %@ at %@</key>
    <string>%@_%@_%@</string>
<key>.</key>
    <string></string>
<key>Screen Shot</key>
    <string>screenshot</string>

แล้วก็

Control+ O เพื่อเขียนไฟล์และControl+ X เพื่อออกจากนาโน

$ plutil -convert binary1 ScreenCapture.strings

$ killall SystemUIServer

อีกสิ่งหนึ่งที่ควรทราบที่นี่คือการกำจัด AM / PM คุณจะต้องเปลี่ยนในการตั้งค่าระบบ> ภาษาและข้อความ> รูปแบบ (รูปแบบ 24 ชั่วโมง) การประทับเวลาจะปรากฏขึ้นตามวิธีการตั้งค่านี้ โปรดทราบว่าหากคุณเปลี่ยนการตั้งค่านี้ชื่อไฟล์ทั้งหมดจะใช้รูปแบบนี้

~ ให้ฉันรู้ว่ามันทำงานอย่างไร


3

เอฟเฟกต์ของการกระทำที่ซับซ้อนของเทอร์มินัลที่แสดงด้านบนสามารถทำได้ผ่านบานหน้าต่างการตั้งค่าความลับฟรีซึ่งทำหน้าที่เป็นอินเทอร์เฟซสำหรับการตั้งค่าที่ซ่อนทุกประเภทใน Mac OS และแอพ เพียงเปิดบานหน้าต่าง pref และค้นหาการตั้งค่าที่คุณต้องการเปลี่ยน


1

ผมชอบคำตอบของเอเดรียบี นี่คือเชลล์สคริปต์ที่ฉันเขียนเพื่อเปลี่ยนชื่อไฟล์ cap หน้าจอ: https://gist.github.com/DinoChiesa/7796444

ที่จะตั้งขึ้นเป็นการกระทำโฟลเดอร์ทำตามบทความนี้

เมื่อคุณไปที่หน้าต่าง Automator ทำตามคำแนะนำนี้:

ป้อนคำอธิบายรูปภาพที่นี่

อย่าลืมบันทึก (Command-S)

ในประสบการณ์ของฉันใช้เวลา 3-6 วินาทีสำหรับการกระทำของโฟลเดอร์นั้นเพื่อ "เริ่มต้น" หลังจากฉันจับภาพหน้าจอ


1

เพียงแค่ใช้ 2 คำสั่ง:

d̶e̶f̶a̶u̶l̶t̶s̶ ̶w̶r̶i̶t̶e̶ ̶c̶o̶m̶.̶a̶p̶p̶l̶e̶.̶s̶c̶r̶e̶e̶n̶c̶a̶p̶t̶u̶r̶e̶ ̶n̶a̶m̶e̶ ̶"̶s̶c̶r̶e̶e̶n̶s̶h̶o̶t̶_̶$̶(̶d̶a̶t̶e̶ ̶+̶%̶Y̶_̶%̶m̶_̶%̶d̶-̶%̶H̶_̶%̶M̶_̶%̶S̶)̶"̶ ̶
d̶e̶f̶a̶u̶l̶t̶s̶ ̶w̶r̶i̶t̶e̶ ̶c̶o̶m̶.̶a̶p̶p̶l̶e̶.̶s̶c̶r̶e̶e̶n̶c̶a̶p̶t̶u̶r̶e̶ ̶"̶i̶n̶c̶l̶u̶d̶e̶-̶d̶a̶t̶e̶"̶ ̶0̶

คุณยังสามารถเปลี่ยนตำแหน่งภาพหน้าจอเริ่มต้น (ในกรณีของฉันนี่คือโฟลเดอร์ใน iCloud)

defaults write com.apple.screencapture location "~/Library/Mobile\ Documents/com\~apple\~CloudDocs/screenshots"

ขอบคุณคุณเป็นสิ่งที่ดี
TinhNQ

วิธีนี้ใช้งานได้เป็นครั้งแรก แต่ทุกภาพหน้าจอที่ตามมาจะซ้ำชื่อแรกและผนวกหมายเลขที่เพิ่มขึ้นต่อท้าย
Brett VanderVeen

@BrettVanderVeen ใช่คุณพูดถูกใช่ไม่ใช่วิธีแก้ปัญหา
Pavlo Zamoroka

0

IMO คุณไม่ควรโคลนกับสิ่งใดใน / System /

สิ่งหนึ่งที่คุณกำลังขอให้การปรับแต่งของคุณจะถูกเขียนทับโดยการปรับปรุงในอนาคต

ดาวน์โหลดตัวอย่างของ Sharpshooter จากhttp://www.kerlmax.com/products/sharpshooter/

คุณสามารถใช้งานได้ 30 วัน จากนั้นซื้อมันในราคา $ 15 มันเป็นเครื่องมือที่ยอดเยี่ยม

อีกวิธีหนึ่งคุณลองใช้Skitch แล้วหรือยัง มันฟรีอย่างสมบูรณ์และดีกว่าในตัวมาก

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