Mengubah nama file tangkapan layar default

15

Apakah ada cara untuk mengubah awalan tangkapan layar nama file default ( Cmd-Shift-4tipe tangkapan layar) menjadi sesuatu selain dari default? Nama default terlihat seperti ini:

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

Tapi saya lebih suka menggunakan sesuatu seperti:

screenshot_2011-08-30_100136.png

Pada dasarnya saya bisa menghapus spasi dan sampah, karena menjengkelkan untuk menelusuri file di Terminal. Adakah cara mudah untuk mengubah awalan ini dengan salah satu defaults write com.apple.screencaptureperintah gaya?

colemanm
sumber
2
Apakah ada kemungkinan kami dapat meminta Anda memilih jawaban yang sesuai untuk Anda? (atau hasil edit untuk mengetahui lebih baik apa yang Anda cari?)
bmike
Info Serupa: superuser.com/q/339702/247728
JayRizzo

Jawaban:

11

Anda dapat mengubah 'Cuplikan layar' menjadi 'tangkapan layar' dengan perintah berikut

defaults write com.apple.screencapture name screenshot
killall SystemUIServer

Jika Anda ingin menggali lebih dalam di Terminal, Anda dapat mencapai apa yang Anda inginkan dengan melakukan hal berikut:

CATATAN: Buat cadangan file apa pun yang Anda ubah seandainya Anda melakukan kesalahan.

  1. cd /System/Library/CoreServices/SystemUIServer.app/Contents/Resources/English.lproj
  2. Buat salinan dari file yang ada:
    sudo cp ScreenCapture.strings ScreenCapture.strings.old
  3. Masukkan kata sandi Admin jika diminta
  4. Konversi ke format yang dapat diedit:
    sudo plutil -convert xml1 ScreenCapture.strings
  5. sudo vi ScreenCapture.strings

    Temukan baris berikut:

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

    dan ganti dengan baris berikut:

    <key>%@ %@ at %@</key>  
    <string>%@_%@_%@</string>  
    
  6. Konversi kembali ke biner:
    sudo plutil -convert binary1 ScreenCapture.strings
  7. killall SystemUIServer

yang dikombinasikan dengan perubahan pertama akan membuat Anda mendapatkan sesuatu seperti ini:

screenshot_2011-08-30_10.01.36.png yang sangat dekat dengan apa yang Anda butuhkan saya pikir

Conorgriffin
sumber
2
Ini tampaknya tidak berfungsi di OS X El Capitan, mungkin karena Perlindungan Integritas Sistem.
Radon Rosborough
7

Saya memecahkan ini dengan cara lain. Menggunakan Automator saya mengatur Aksi Folder untuk memantau folder screen shot saya dan mengganti nama file baru persis seperti yang saya inginkan.

Ada panduan yang layak di sini dengan pendekatan dan instruksi serupa.

Adrian B
sumber
Apa latensi dengan pendekatan Automator? Berapa lama antara waktu screencap asli disimpan, dan file tersedia dengan nama file baru? Apakah 1 detik, 3 detik, 12 detik?
Cheeso
Antara 5 dan 7 detik dari tangkapan layar diambil hingga nama file diubah (di MacBook Pro saya dari 2009).
Adrian B
Terima kasih! Mengingat itu, saya akan menulis beberapa kode bash untuk melakukan ini.
Cheeso
4

Saya telah menonaktifkan pintasan default dan menetapkan pintasan ke perintah ini:

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

-i (interaktif) seperti ⇧⌘4 atau ⌃⇧⌘4.

Lri
sumber
Itu sepertinya solusi paling langsung untuk masalah itu. Tapi bagaimana cara memetakan jalan pintas ke perintah? Dalam dialog System Preferences, tertulis "masukkan nama persis MENU COMMAND yang ingin Anda tambahkan." Perintah Anda bukan perintah menu, jadi ...?
Cheeso
1
@Cheeso Lihat tautan dalam jawaban. Anda dapat menggunakan aplikasi seperti FastScripts atau Alfred atau membuat layanan dengan Automator.
Lri
3

Buka terminal dan masukkan:

$ sudo su

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

$ plutil -convert xml1 ScreenCapture.strings

$ nano ScreenCapture.strings

perubahan

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

untuk

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

kemudian

Control+ O untuk menulis file, dan Control+ X untuk keluar dari nano

$ plutil -convert binary1 ScreenCapture.strings

$ killall SystemUIServer

Satu hal lagi yang perlu diperhatikan di sini adalah bahwa untuk menghilangkan AM / PM Anda perlu mengubahnya di System Preferences> Language & Text> Format (format 24 jam). Prangko waktu ditampilkan sesuai dengan cara ini diatur; perlu diingat jika Anda mengubah pengaturan ini semua nama file akan menggunakan format ini.

~ Biarkan saya tahu cara kerjanya.

aku akan
sumber
3

Efek yang sama dari tindakan terminal rumit yang ditunjukkan di atas dapat dicapai melalui panel preferensi rahasia gratis , yang berfungsi sebagai antarmuka untuk semua jenis pengaturan tersembunyi di Mac OS dan aplikasinya. Cukup buka panel pref dan temukan pengaturan yang ingin Anda ubah

Alexander - Pasang kembali Monica
sumber
1

Aku menyukai Adrian B jawabannya . Inilah skrip shell yang saya tulis untuk mengganti nama file screen cap: https://gist.github.com/DinoChiesa/7796444

Untuk mengaturnya sebagai Tindakan Folder, ikuti artikel ini .

Ketika Anda sampai ke jendela Automator, ikuti panduan ini:

masukkan deskripsi gambar di sini

Jangan lupa untuk menyimpannya (Command-S).

Diperlukan waktu 3-6 detik, menurut pengalaman saya, untuk tindakan folder itu untuk "memulai" setelah saya menangkap layar.

Cheeso
sumber
1

cukup gunakan 2 perintah:

defaults write com.apple.screencapture name "screenshot_$(date +%Y_%m_%d-%H_%M_%S)"
defaults write com.apple.screencapture "include-date" 0

Anda juga dapat mengubah lokasi tangkapan layar default (dalam kasus saya ini adalah folder di iCloud)

defaults write com.apple.screencapture location "~/Library/Mobile\ Documents/com\~apple\~CloudDocs/screenshots"
Pavlo Zamoroka
sumber
terima kasih itu bagus
TinhNQ
0

IMO Anda benar-benar tidak boleh main-main dengan apa pun di / System /.

Untuk satu hal, Anda hanya meminta agar kustomisasi Anda ditimpa oleh pembaruan di masa mendatang.

Unduh demo Sharpshooter dari http://www.kerlmax.com/products/sharpshooter/

Anda bisa menggunakannya selama 30 hari. Kemudian beli seharga $ 15. Ini utilitas yang luar biasa.

Atau, apakah Anda sudah mencoba Skitch ? Ini benar-benar gratis, dan jauh lebih baik daripada built-in.

TJ Luoma
sumber