Bir klasörü baskı kuyruğuna nasıl dönüştürebilirim?


4

MacOS'ta, bir PDF'yi doğrudan Yazıcının yazdırma kuyruğunun penceresine bırakabilirsiniz; hemen yazdırması için gönderilir (yazıcının varsayılan ayarlarıyla).

Belirtilen bir klasörle benzer bir şey yapmanın bir yolunu arıyorum. Örn: Bu klasöre bırakılan (veya başka bir yöntemle kaydedilen) herhangi bir PDF veya PostScript dosyası doğrudan yazıcıya gönderilir.

Açık olan şey, Klasör Eylemleri ve bir AppleScript kullanmaktır, ancak göz ardı ettiğim daha düzgün bir çözüm olup olmadığını merak ediyorum. Temel olarak, baskı kuyruğu olarak çalışan bir filepat arıyorum.

Yanıtlar:


8

4 adımda daha basit bir çözüm ve küçük bir kabuk komut dosyası var:

  1. kendi biriktirme dizininizi oluşturun:

    /usr/bin/sudo mkdir /var/spool/my_printer
    
  2. Her zamanki yerel bin dizininize aşağıdaki kabuk betiğini yazalım /local/bin

    cd /local/bin
    

    aşağıdakileri içeri kopyalayın my_spooler:

    #!/bin/sh
    
    # go into the spool directory
    cd /var/spool/my_printer
    
    # main loop: loop till end of time
    while : ; do
    
        # check for any newly arrived text file
        for _file in * ; do
    
           # if _file is a normal file, print and remove it (-r option to lpr)
            [ -f "${_file}" ] && lpr -r "${_file}"
        done
    
        # don't loop like a fool
        sleep 300
    done
    
  3. senin yapmak my_spooleryürütülebilir:

    chmod u+x my_spooler
    
  4. Başlat:

    my_spooler &
    

    /local/biniçinde değilse , tam yol olmadan başlamalı PATH , daha sonra şu şekilde başlamalı:

    /local/bin/my_spooler &
    

    Bitiş &aracı, oturumunuzun zamanın sonuna kadar beklemesini engellememek için arka planda başlatır.

Bu nasıl kullanılır

Kullanmak için herhangi bir metni ya da PS ya da PDF dosyasını kendi tanımladığınız biriktirme dizininizde istediğiniz şekilde taşımalısınız. Ya da Finderya temel komut satırı ile:

cp my_file.pdf /var/spool/my_printer

Shell betiği henüz kontrol edilmedi. Eğer çalışıyorsa, bana bir send gönder.
dan

Teşekkürler. Bu daha büyük bir projenin parçası, bu yüzden meyve verdiğinde size haber vereceğim, ancak iyi görünüyor.
benwiggy
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.