Thay đổi tên tệp ảnh chụp màn hình mặc định


15

Có cách nào để thay đổi tiền tố tên ảnh chụp màn hình mặc định ( Cmd-Shift-4loại ảnh chụp màn hình) thành một cái gì đó khác với mặc định không? Tên mặc định trông như thế này:

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

Nhưng tôi thích sử dụng cái gì đó như:

screenshot_2011-08-30_100136.png

Về cơ bản để tôi có thể loại bỏ khoảng trắng và rác, vì thật khó chịu khi duyệt qua các tệp trong Terminal. Bất kỳ cách dễ dàng để thay đổi tiền tố này với một trong các defaults write com.apple.screencapturelệnh kiểu?


2
Có bất cứ cơ hội nào chúng tôi có thể khiến bạn chọn một câu trả lời phù hợp với bạn không? (hoặc chỉnh sửa để biết rõ hơn những gì bạn tìm kiếm?)
bmike

Thông tin tương tự: superuser.com/q/339702/247728
JayRizzo

Câu trả lời:


11

Bạn có thể thay đổi 'Ảnh chụp màn hình' thành 'ảnh chụp màn hình' bằng các lệnh sau

defaults write com.apple.screencapture name screenshot
killall SystemUIServer

Nếu bạn muốn đi sâu hơn một chút trong Terminal, bạn có thể đạt được những gì bạn muốn bằng cách làm như sau:

LƯU Ý: Tạo bản sao lưu của bất kỳ tệp nào bạn thay đổi trong trường hợp bạn mắc lỗi.

  1. cd /System/Library/CoreServices/SystemUIServer.app/Contents/Resources/English.lproj
  2. Tạo một bản sao của tập tin hiện có:
    sudo cp ScreenCapture.strings ScreenCapture.strings.old
  3. Nhập mật khẩu quản trị nếu được nhắc
  4. Chuyển đổi sang định dạng có thể chỉnh sửa:
    sudo plutil -convert xml1 ScreenCapture.strings
  5. sudo vi ScreenCapture.strings

    Xác định vị trí các dòng sau:

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

    và thay thế bằng các dòng sau:

    <key>%@ %@ at %@</key>  
    <string>%@_%@_%@</string>  
    
  6. Chuyển đổi trở lại nhị phân:
    sudo plutil -convert binary1 ScreenCapture.strings
  7. killall SystemUIServer

kết hợp với thay đổi đầu tiên sẽ giúp bạn có được thứ gì đó như thế này:

screenshot_2011-08-30_10.01.36.png Tôi nghĩ rất gần với những gì bạn cần


2
Điều này dường như không hoạt động trong OS X El Capitan, có lẽ là do Bảo vệ toàn vẹn hệ thống.
Radon Rosborough

7

Tôi đã giải quyết điều này theo cách khác. Sử dụng Automator Tôi thiết lập Thư mục hành động để theo dõi thư mục ảnh chụp màn hình của mình và đổi tên bất kỳ tệp mới nào theo cách tôi muốn.

Có một hướng dẫn tốt ở đây với một cách tiếp cận và hướng dẫn tương tự.


Độ trễ với phương pháp Automator là gì? Bao lâu giữa thời gian bản ghi âm ban đầu được lưu và tệp có sẵn với tên tệp mới? Là 1 giây, 3 giây, 12 giây?
Cheeso

Từ 5 đến 7 giây từ ảnh chụp màn hình được chụp cho đến khi tên tệp được thay đổi (trên MacBook Pro của tôi từ năm 2009).
Adrian B

Cảm ơn! Cho rằng, tôi sẽ viết một số mã bash để làm điều này.
Cheeso

4

Tôi đã tắt các phím tắt mặc định và gán một phím tắt cho lệnh này:

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

-i (tương tác) giống như ⇧⌘4 hoặc ⌃⇧⌘4.


Đó dường như là giải pháp trực tiếp nhất cho vấn đề. Nhưng làm thế nào để ánh xạ một phím tắt đến một lệnh? Trong hộp thoại Tùy chọn hệ thống, nó cho biết "nhập tên chính xác của LỰA CHỌN mà bạn muốn thêm." Lệnh của bạn không phải là lệnh menu, vì vậy ...?
Cheeso

1
@Cheeso Xem liên kết trong câu trả lời. Bạn có thể sử dụng một ứng dụng như FastScripts hoặc Alfred hoặc tạo một dịch vụ với Automator.
Lri

3

Mở terminal và nhập:

$ sudo su

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

$ plutil -convert xml1 ScreenCapture.strings

$ nano ScreenCapture.strings

thay đổi

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

đến

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

sau đó

Control+ O để ghi tệp và Control+ X để thoát nano

$ plutil -convert binary1 ScreenCapture.strings

$ killall SystemUIServer

Một điều nữa cần lưu ý ở đây là để loại bỏ AM / PM, bạn sẽ cần thay đổi nó trong Tùy chọn hệ thống> Ngôn ngữ & văn bản> Định dạng (định dạng 24 giờ). Tem thời gian được hiển thị theo cách thiết lập này; Hãy ghi nhớ nếu bạn thay đổi cài đặt này, tất cả tên tệp sẽ sử dụng định dạng này.

~ Hãy cho tôi biết làm thế nào nó hoạt động ra.


3

Hiệu quả tương tự của các hành động đầu cuối phức tạp được hiển thị ở trên có thể đạt được thông qua ngăn tùy chọn bí mật miễn phí , đóng vai trò là giao diện cho tất cả các loại cài đặt ẩn trong Mac OS và đó là các ứng dụng. Chỉ cần mở khung pref và tìm cài đặt bạn muốn thay đổi


1

Tôi thích câu trả lời Adrian B . Đây là tập lệnh shell tôi đã viết để đổi tên tập tin cap màn hình: https://gist.github.com/DinoChiesa/7796444

Để thiết lập nó như là một hành động thư mục, hãy theo dõi bài viết này .

Khi bạn đến cửa sổ Automator, hãy làm theo hướng dẫn sau:

nhập mô tả hình ảnh ở đây

Đừng quên lưu nó (Command-S).

Theo kinh nghiệm của tôi, phải mất 3-6 giây để hành động thư mục đó "khởi động" sau khi tôi chụp màn hình.


1

chỉ cần sử dụng 2 lệnh:

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

bạn cũng có thể thay đổi vị trí ảnh chụp màn hình mặc định (trong trường hợp của tôi đây là thư mục trong iCloud)

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

cảm ơn, điều đó thật tốt
TinhNQ

0

IMO bạn tuyệt đối không nên lẩn quẩn với bất cứ thứ gì trong / System /.

Đối với một điều, bạn chỉ yêu cầu các tùy chỉnh của bạn được ghi đè bằng bản cập nhật trong tương lai.

Tải xuống bản demo của Sharpshooter từ http://www.kerlmax.com/products/sharpshooter/

Bạn có thể sử dụng nó trong 30 ngày. Sau đó mua nó với giá 15 đô la. Đó là một tiện ích tuyệt vời.

Ngoài ra, bạn đã thử Skitch ? Nó hoàn toàn miễn phí và tốt hơn rất nhiều so với tích hợp sẵn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.