Soru:
OSX Screen Shot dosya adının formatını nasıl değiştirirsiniz?
mbigras
2016-09-03 04:08:15 UTC
view on stackexchange narkive permalink

Ekran görüntülerimin yalnızca geçerli tarih saatiyle, tercihen aşağıdaki gibi bir biçimde adlandırılmasını istiyorum:

  2016-09-02-16: 02: 48
 

Bunu nasıl yapmalıyım?

Şimdiye kadar com.apple.screencapture adına boş bir dize eklemeyi denedim

gösterildiği gibi:

  $ varsayılanlar com.apple.screencapture adını yazın ""
$ killall SystemUIServer
 

Ancak OSX, aşağıda gösterildiği gibi hala bir boşluk ekliyor: enter image description here

Yani yaşadığım iki sorun var:

  1. Tarih saat biçimini boşluk kalmayacak şekilde nasıl değiştirebilirim?
  2. Ekran görüntüsü dosya adında önde boşluk olmadığından nasıl emin olabilirim?

Teşekkürler :)

Bunu başarmanın bir yolunu hiç buldun mu?
Beş yanıtlar:
klanomath
2016-09-03 06:13:45 UTC
view on stackexchange narkive permalink

Bir dosyayı önerilen adla yeniden adlandıramazsınız - HFS + dosya sisteminde ayrılmış (= yasaklanmış) karakterler olan birkaç iki nokta (: ) içerir - veya varsayılanları com yazmaz .apple.screencapture ... farklı bir tarih biçimine izin verir.

Bir fikir, özel bir klasördeki tüm dosyaları yeniden adlandırmak için "Ekran Resmi ..." ile başlayan bir başlatma aracısı oluşturmaktır:

Ekran görüntüleri için varsayılan adlandırma kuralını geri yüklediğinizi ve kullanıcı_adı 'nı aşağıdaki kısa adınızla değiştirdiğinizi varsayarsak çok basit bir çözüm şudur:

Örn. / usr / local / bin içinde aşağıdaki içeriğe sahip "screencaprn" adlı bir dosya oluşturun:

  #! / bin / bash

mv / Kullanıcılar / kullanıcı_adı / Masaüstü / Ekran \ Shot * .png / Kullanıcılar / kullanıcı_adı / Masaüstü / "" tarih "+% Y-% m-% d-% H.% M.% S" ".png"; $ 2> / dev / null
 

İzinleri değiştirin:

  chmod + x / usr / local / bin / screencaprn
 

Ardından ~ / Library / LaunchAgents'ta "usr.screenshot.rename.plist" adı ve içeriği olan bir başlatma aracısı oluşturun:

  <? xml version = "1.0" encoding = "UTF-8"? >
<! DOCTYPE plist PUBLIC "- // Apple // DTD PLIST 1.0 // EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version = "1.0" >
<dict>
    <key>Label< / key>
    <string>usr.screenshot.rename< / string>
    <key>ProgramArguments< / key>
    <array>
        <string> / bin / bash< / string>
        <string>-c< / string>
        <string> / usr / local / bin / screencaprn< / string>
    < / array>
    <key>WatchPaths< / key>
    <array>
<string> / Kullanıcılar / kullanıcı_adı / Masaüstü< / string>
    < / array>
< / dict>
< / plist>
 

Ardından plist'i şununla yükleyin:

  launchctl load ~ / Library / LaunchAgents / usr.screenshot.rename.plist
 

Bu çalışır ancak 10 saniyeye kadar bir gecikmeye sahiptir (bu nedenle orijinal adlandırılmış ekran görüntüsü dosyasının saniyelerini ve bazen dakikalarını değiştirir, örn. Screen Shot 2016-09-03, 03.24.02.png 2016-09-03-03.24.05.png ) ve bir com.apple.xpc.launchd [1] ekler (usr.screenshot.rename): Hizmet yalnızca X saniye boyunca çalıştı.Yeniden canlanma Y saniye kadar itiliyor. satır sistem günlüğüne.

`:` Karakteri ile ilgili not: Aslında HFS + dosya sisteminde ayrılmış veya özel bir karakter değildir ve bir dosya adında mükemmel bir şekilde kullanabilirsiniz.Bununla birlikte, Klasik Mac OS'den (dosya adlarında `/` karakterine izin verir, ancak `:` karakterine izin vermez) OS X'e (`/`,ancak `:`) izin veriyor.
Pavlo Zamoroka
2019-07-03 01:01:04 UTC
view on stackexchange narkive permalink

j̶u̶s̶t̶ ̶u̶s̶e̶ ̶2̶ ̶c̶o̶m̶m̶a̶n̶d̶s̶: ̶ ̶

defaults write ̶c̶o̶m̶.̶a̶p̶p̶l̶e̶.̶s̶c̶r̶e̶e̶n̶c̶a̶p̶t̶u̶r̶e̶ adı ̶ "̶ $ ̶ (tarih ̶ + ̶% Y-̶% m-̶% d) ̶ ̶ $ ̶ (tarih ̶ + ̶% h-̶% M
 -̶% ̶S̶) ̶ "̶
varsayılanlar com.apple.screencapture "include-date" yazın 0

Lütfen macOS'taki dosya adlarında : kullanamayacağınızı unutmayın.

kullandığım 2 date değişkenlere elde Bu, kalıp: ̶ ̶ 2019-07-02 23-04-04.png kod> ̶

Ayrıca varsayılan ekran görüntüsü konumunu da değiştirebilirsiniz (benim durumumda bu, iCloud'daki bir klasördür)

  varsayılanları com.apple.screencapture konumunu "~ / Library / Mobile \ Documents / com \ ~ apple \ ~ CloudDocs / screenshots" yaz
 

UPD: doğru çözüm değil. ad, her ekran görüntüsü ve oluşturulma tarihi için aynı olacaktır - bu, bu komutu çalıştırdığınız tarihtir

Tarihin görünmesini istemiyorsanız, bunun yerine bunu da deneyebilirsiniz: `varsayılanlar com.apple.screencapture include-date -bool false yazın;killall SystemUIServer`
Matt Sephton
2019-04-19 20:24:35 UTC
view on stackexchange narkive permalink

Saat biçimi, sahip olduğunuz şeye bağlıdır:
Sistem Tercihleri > Dil & Bölgesi > 24 Saatlik Zaman

Şu biçimdeki biçim değiştirilerek geçersiz kılınabilir:
Sistem Tercihleri > Dil & Region > Advanced ... > Times > Medium

Finder'da, dosya adında AM / PM bulunmayan ekran görüntülerini yeniden adlandırırken garip bir hata var, çünkü zamanı ayıran dönemler dosya uzantılarını ayıranla karıştırılıyor.

Ekran görüntüsünden kurtulmak ve önde gelen boşluktan kurtulmak için, dosya sistemini izleyen ve kullanıcı tanımlı işlemleri gerçekleştirebilen bir araç ( Hazel gibi) kullanırım.Aslında, Sistem Tercihleri ile hiçbir şekilde uğraşamazsınız ve Hazel'ın sizin için ekran görüntüsü dosyalarını yeniden adlandırmasını sağlayabilirsiniz.

Not: Dosya adlarında: iki nokta üst üste karakterini kullanamazsınız.

John Keates
2016-09-03 10:31:10 UTC
view on stackexchange narkive permalink

Adın geri kalanını değiştirmek için OS X Lion'da varsayılan ekran görüntüsü adını nasıl değiştirebilirim? konusuna bakın.Boşluk, büyük olasılıkla tarih ve saat değerlerinin yerelleştirilmesi ihtiyacından dolayı, dizeler dosyasında belirtilen dize biçimi tarafından eklenir.Plist adı önekini değiştirmeyi biçimlendirilmiş en son damgayı değiştirerek birleştirirseniz, istediğinizi yapmasını sağlayabilirsiniz.

vy32
2018-06-10 02:52:32 UTC
view on stackexchange narkive permalink

Diğer bir çözüm, dosya değiştirme hizmetine abone olan ve oluşturulduklarında dosya adlarını değiştiren uzun süredir çalışan bir arka plan programıdır.



Bu Soru-Cevap, otomatik olarak İngilizce dilinden çevrilmiştir.Orijinal içerik, dağıtıldığı cc by-sa 3.0 lisansı için teşekkür ettiğimiz stackexchange'ta mevcuttur.
Loading...