Làm cách nào để thay đổi tên mặc định cho ảnh chụp màn hình được tạo bởi ảnh chụp màn hình gnome?


34

Ảnh chụp màn hình Gnome 3.1.2 sử dụng tên tệp như thế này

Ảnh chụp màn hình lúc 2011-07-31 12: 13: 04.png

làm cho nó khá dễ dàng để nhìn thấy khi nó được thực hiện.

Vấn đề là nó sử dụng ký tự dấu hai chấm (:) khiến nó không thể truy cập một hình ảnh như vậy từ Windows.

Xem xét tôi chụp hầu hết các ảnh chụp màn hình của mình để tôi có thể gửi chúng cho người dùng Windows, điều này đã gây ra một số vấn đề.

Có cách nào để thay đổi tên mặc định được sử dụng bởi công cụ chụp màn hình để thay thế ":" bằng "." hoặc là "," ?

Câu trả lời:


12

Nó thực sự không thể thay đổi nó một cách dễ dàng, có lẽ bạn có thể giúp với báo cáo lỗi này .

(đối với người tò mò, hãy kiểm tra mã nguồn . Hiện tại, dòng có liên quan là 134 )

Cập nhật : Lỗi đã được sửa chữa ngược dòng vào ngày 2015-01-28 , thay thế dấu hai chấm bằng dấu gạch ngang, giúp ích. Nhưng họ đã không lấy không gian ra một cách đáng tiếc.


3
+1 để liên kết với mã nguồn. Bây giờ THAT là cách linux. (Mặc dù mã tên tệp thực sự ở đây, ngay bây giờ: git.gnome.org/browse/gnome-utils/tree/gnome-sc Muff / Lỗi )
Mark E. Haase

1
Thật không may, liên kết đã chết: Không tìm thấy kho lưu trữ
gertvdijk

2
URL mới: git.gnome.org/browse/gnome-sccam/tree/src/ (được lấy vào 2013/02/2016 18:08 UTC + 0800)
LiuYan 研 16/2/13

Tôi ước chúng ta có thể điều chỉnh điều này cục bộ trước khi các nhà phát triển Gnome cũ tốt thức dậy nhanh hơn một chút trước những vấn đề quan trọng như vậy được báo cáo bởi người dùng ;-)
Sadi

3
Bất cứ ai nghĩ rằng đó là một ý tưởng tốt để mã hóa tên màn hình cứng trong C, yêu cầu biên dịch lại toàn bộ môi trường máy tính để bàn? Không ai từng nghĩ rằng người dùng có thể muốn thay đổi cách đặt tên mặc định? Bây giờ đã có dconf-editorvà như vậy, và gnome-screenshotsử dụng nó, tại sao không có mục nhập dcs cho "chính sách đặt tên ảnh chụp màn hình" mà bạn có thể đặt để nói Screenshot-%02d.png, và nếu trống, sau đó đi cùng với chính sách đặt tên được mã hóa cứng? Ơ ....
sdaau

10

Có một cách đơn giản và bẩn thỉu để đổi tên tất cả ảnh chụp màn hình được chụp ngay sau khi tạo, nhưng bạn sẽ cần cài đặt inotify-tools ( apt-get install inotify-tools) và sau đó bạn có thể chạy lệnh này:

while true; do inotifywait -e CREATE ~/Pictures && rename 's/\:/\./g' Pictures/Screenshot*.png; done;

Trong khi lệnh này sẽ chạy, mỗi khi bạn lưu ảnh chụp màn hình mới trong Ảnh /, tập lệnh sẽ đổi tên mọi tệp có chứa :, thay thế :bằng.

(Có thể bạn muốn thay đổi thư mục, tôi không biết Gnome 3 sử dụng thư mục nào) Nếu bạn thực sự thích nó, bạn có thể bắt đầu lệnh này trong một tập lệnh mỗi khi gnome bắt đầu.


3
+1 Đây là một mẹo nhỏ gọn gàng, nhưng regex của bạn phải là 's /\:/\./ g'
Mark E. Haase

một lựa chọn thay thế khác: sử dụng ký tự unicode
LiuYan 刘

Lưu ý rằng ảnh chụp màn hình được lưu theo mặc định ~/Pictures, không ~/Desktop.
MestreLion

9

Thay vì cài đặt phần mềm bổ sung và viết mã này vào công cụ chụp màn hình, đây là cách giải quyết để đổi tên các tệp sau đó.

Tất cả bạn cần làm là điều hướng đến thư mục và chạy lệnh sau

rename 's/\:/\-/g' *.png

Điều này sẽ thay thế tất cả các dấu hai chấm bằng dấu gạch ngang trong tất cả các tên tệp kết thúc bằng .pngcác tên có trong thư mục hiện tại.


Ít tối ưu hơn, nhưng cách giải quyết dễ dàng hơn nhiều so với đề xuất của fain182 . +1
gertvdijk

6

gnome-screenshotkhông cho phép đặt mặc định toàn cục cho tên tệp ảnh chụp màn hình, nhưng bạn có thể sử dụng -ftùy chọn để chỉ định tên tệp trên dòng lệnh.

Chúng ta có thể sử dụng điều đó để viết một tập lệnh bash nhỏ sẽ thay thế gnome-screenshottệp nhị phân gốc và sẽ thực thi bản gốc với tham số tên tệp chính xác.

Lưu ý rằng bạn sẽ phải có quyền root cho các hoạt động sau, do đó, tiền tố mỗi lệnh có sudohoặc mở shell gốc bằng sudo -i.

  1. Di chuyển gnome-screenshotnhị phân ban đầu ra khỏi đường đi:

    dpkg-divert --add --rename --divert /usr/bin/gnome-screenshot.real /usr/bin/gnome-screenshot
  2. Mở /usr/bin/gnome-screenshottrong trình chỉnh sửa (bạn sẽ thấy một tệp trống mới):

    editor /usr/bin/gnome-screenshot
  3. Dán hai dòng sau vào trình chỉnh sửa:

    #!/bin/bash  
    gnome-screenshot.real -f "$HOME/Pictures/Screenshots/$(date +%F_%H-%M-%S).png" $@

    Bạn có thể chèn bất kỳ đường dẫn nào bạn thích sau -f; chỉ cần chắc chắn để đặt nó trong dấu ngoặc kép và để giữ $@sau nó.
    Trong ví dụ này, các ảnh chụp màn hình sẽ được lưu trữ với tên tệp như thế nào /home/yourusername/Pictures/Screenshots/2011-07-31_12-13-04.png. Xem man dateđể biết chi tiết về date +%…cú pháp.

  4. Lưu tệp và đóng trình chỉnh sửa (ví dụ: sử dụng Ctrl+ Xtrong Nano hoặc :wqtrong Vim).

  5. Làm cho tập lệnh mới được tạo có thể thực thi được:

    chmod a+x /usr/bin/gnome-screenshot

4

Shutter là một ứng dụng khác để chụp ảnh màn hình cho phép bạn tùy chỉnh tên tệp: bạn có thể cài đặt nó từ Trung tâm phần mềm Ubuntu.


1
Shutter là tuyệt vời của chính nó, và đây là imho đây là cách tiếp cận tốt nhất: thay vì sửa tên tập tin xấu, không sản xuất chúng!
MestreLion

Ví dụ: tên tệp trong Shutter có thể có ký tự đại diện sau : $nb_name_%Y-%m-%d-%H%M%S. Bạn có thể đặt nó trong Tùy chọn.
Vladimir S.

1

Nếu:

  1. bạn đã quen thuộc với các công cụ chỉnh sửa nhị phân, chẳng hạn như bless(xem gói ubfox chẳng hạn hoặc github ),
  2. và bạn biết công cụ sửa đổi định dạng chuỗi C,
  3. và bạn biết sự khác biệt giữa 0x0"0",
  4. và bạn không ngại làm phiền với các tệp nhị phân được cài đặt bởi bản phân phối Linux của bạn,

sau đó bạn có thể sửa đổi tên tệp được sử dụng bởi gnome-screenshot.

Khi chỉnh sửa nhị phân gnome-screenshot, bạn sẽ tìm thấy hai chuỗi định dạng:

  1. %Y-%m-%d %H-%M-%S theo sau là một byte rỗng
  2. Screenshot from %s.%stheo sau là một byte null.

Trong chuỗi định dạng thứ hai, đầu tiên %slà ngày, thứ hai %slà phần mở rộng tập tin.

Từ đây, bạn có thể, ví dụ, ghi đè lên %Y-%m-%d %H-%M-%S với %F-%H%M%Stheo sau là một byte null và Screenshot from %s.%sbởi shot %s.%stheo sau là một byte null: ảnh chụp màn hình sau đó sẽ được đặt tên "shot 2018-05-05_174857.png"ví dụ.

Thích nghi với sở thích của bạn.

Có hai ràng buộc:

  1. định dạng ngày mới và định dạng tên tệp mới không được dài hơn định dạng ban đầu,
  2. các tùy chỉnh của bạn sẽ bị hủy nếu bạn cài đặt phiên bản mới gnome-screenshot, ví dụ như khi cập nhật hệ thống của bạn.

Cảnh báo:

  • Đã thử nghiệm trên Ubuntu 16.04 LTS, số dặm của bạn có thể thay đổi.
  • Đây là một hack , không phải là một cách rõ ràng để sửa đổi tên mặc định được tạo bởi gnome-screenshot: tạo bản sao lưu trước khi tiếp tục.
  • Đăng mà không có bất kỳ bảo hành của bất kỳ loại.

0

Trong Debian 8.6 KDE → Cài đặt hệ thống → Phím tắt tùy chỉnh, tôi đã đặt Kích hoạt → PrtScn và Hành động →

gnome-screenshot -p -f "$(date +%F_%H-%M-%S)_D.png"

và nó hoạt động tốt.


Tôi tự hỏi phiên bản Debian nào đã xuất hiện gần đây năm năm trước.
mook765
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.