web-dev-qa-db-ja.com

確認、クリップボード干渉、または画面のブラックアウト効果なしで、すぐにスクリーンショットをキャプチャする方法は?

Windowsの場合、IrfanViewは次の機能を備えた強力なスクリーンショットツールを提供します。

  • 000001_20170324110124.Screenshot.pngなどのカスタムファイル名(数値とタイムスタンプ)(実際のファイルの実際のファイル名ではなく、単なる例です。現在のタイムスタンプ(20181107…)は使用しませんでした) GMTとの混乱を避けます)。この番号は、ファイルマネージャ/端末の自動ファイル名補完によってスクリーンショットにすばやく移動し、監視を追加するのに役立ちます。 「スクリーンショット」という言葉は、ファイル検索を使用してスクリーンショットを見つけやすくします。
  • クリップボードを予約しません。 (スクリーンショットをクリップボードに保存したい場合は、gnome-screenshotコマンドを手動で使用できます)
  • スクリーンショットをすぐに保存する機能。 Escapeキーを押してスクリーンショットを削除することにより、誤って閉じるダイアログを確認したり、対話したりする必要はありません。

IrfanViewは、スクリーンショットのキャプチャがトリガーされるたびにWindows通知音を鳴らすだけです。しかし、それ以上のものはありません。

Mateスクリーンショットでは、確認ダイアログに出会わずにスクリーンショットを保存することはできません。少なくとも遅延はなく、パスを記憶し、サウンドや画面効果なしで機能し、ユーザーが手動で希望する場合にのみクリップボードを予約します。編集:Xfceでは、-mate-screenshots from mate-utilsはカメラノイズを発生させます。ノイズがいと思うわけではありませんが、聞いているバックグラウンドオーディオからWordをブロックする可能性があります。

Gnomeスクリーンショットでは、スクリーンブラックアウト効果を使用していますが、これは好ましくありません。見苦しいというわけではなく、画面全体を短時間ブロックするだけです。また、前のスクリーンショットフォルダーは記憶されず、常に〜/ Picturesに設定されます。少なくとも、gnome-screenshotとmate-Screenshotは両方ともブックマークをサポートしています。

ボタンを1つ押すだけでスクリーンショットをキャプチャしてすぐに保存するにはどうすればよいですか?

G2(すべてのキーボードで利用できるわけではありません)などのボーナスキーを設定できる場合、それは素晴らしいことです。また、カスタムのファイル名があればいいのですが、主に、1つのボタンを押すだけでスクリーンショットをキャプチャしたいと思います。

1
neverMind9

スクリーンショットプロセスを容易にするために、小さなbashスクリプトを作成しました。
ただし、8進数の制限をバイパスしようとすると、ダッシュではなくbashでのみ実行されます(shとも呼ばれます)。

##SCR NUM - RUN WITH BASH instead of sh.
scrdir=/path/to/screenshots
if ! [ -e $scrdir ]; then mkdir $scrdir; fi

counter=$(cat "./.count") #import the counter variable from last saved state.
number=$(printf '%07d' $(( 10#$counter )) ) #import number variable for leading zeroes from the original counter variable. If leading zeroes are not needed, the $counter variable can be used directly in the file name.

scrot -m $scrdir/Scr.$number.%Y%m%d%H%M%S.png # -e 'mv $f /path/to/screenshots' #save file with number and YYYYMMDDHHMMSS timestamp.
number=$(( 10#$number+1 )) #add +1 to screenshot counter.
counter=$(printf '%00d' $(( 10#$number)) ) #get number without leading zeroes from $number to avoid compatibility issues. 10#$ bypasses the octal number limitation and only works in bash, not in dash.
echo $num >"./.count" #save +1 increased screenshot counter back to .count file.

いくつかのパラメータを調整して、自分の好みに合わせることができます。

  • -mオプションは、man scrotに従ってすべてのモニターをキャプチャします(複数のモニターが使用されている場合)。
  • %07dは、古いファイルマネージャーでのファイルの並べ替えを改善するために、スクリーンショットカウンターの前に6つのゼロを置きます。いくつかの冗長な7つのゼロは、私の場合は審美的な理由(つまり0000001)のためです。
  • -e 'mv $f /path/to/screenshots'は、撮影したスクリーンショットを後で目的の場所に移動します。 (非推奨)
  • 。countファイルには、スクリーンショットカウンターが格納されます。
  • 追加の$ number変数はファイル名専用で、$ countから生成されますが、 先行ゼロ =、スクリプトに見られるように。
  • 整理されたファイル名に加えて、ファイル名に数字を使用することのもう1つの利点は、以前のスクリーンショットを上書きせずに同じ秒で複数のスクリーンショットを撮ることができることです。

システムのキーボード設定で、スクリプトにキーボードショートカットを割り当てることができますが、その前にWordbashを入力します。私の場合、ホットキーPrintScrを押すたびに実行されます。

1
neverMind9

カスタムディレクトリを使用してスクリーンショットを保存し、gnome-screenshotのタイムスタンプを持つファイル名を付けることができます。次のコマンドを使用する必要があります。

gnome-screenshot -f /path/to/preferred/folder/screenshot_$(date "+%Y%m%d%H%M%S").png

次に、上記のコマンドのキーボードショートカットを設定できます。

1
pomsky