1,000 page document
プリンタを使って印刷したいとしましょう。1,000 pages
印刷ジョブが進行中は他のジョブを印刷できないことがわかります。
1,000 pages
他のユーザーが自分の文書を印刷したときに印刷できることを願っています。 1つのアプローチは、それぞれ50ページの20の小さな印刷ジョブを作成することです。この場合、ユーザは、より小さな印刷ジョブの間に印刷ジョブをキューに入れることができる。
これを行う方法はありますか?文書を手動で分割し、各部分を別々に印刷する必要がない自動化された方法ですか?
答え1
pages.txt
次のように、一度に印刷したいページ範囲を含むテキストファイルを作成できます。
1-50
51-100
101-150
151-200
. . . .
. . . .
このコマンドを使用lpr
すると、印刷コマンドをプリンタに送信できます。このコマンドの詳細については、以下を確認してくださいlpr
。男性。
ジョブを自動化するには、次のものを使用できます。
#!/bin/bash
while IFS= read line
do
lpr -P <my_printer_name> -o page-ranges=$line
sleep 10
done <pages.txt
印刷間の時間間隔を設定するには、sleep
after コマンドを使用できますlpr
(sleep 10
以前の bash の秒数に似ています)。
印刷ジョブが完了したときに電子メール通知を受け取るには、次のmail
操作を実行した後にこのコマンドを使用できます。done <pages.txt
#!/bin/bash
while IFS= read line
do
lpr -P <my_printer_name> -o page-ranges=$line
sleep 10
done <pages.txt
echo "This is message body" | mail -s "This is Subject" [email protected]
各小さなタスクが完了したときに通知を受け取るには、command mail
after commandlpr
とbefore commandを使用できますsleep
。