我正在 Windows Server 2012R2 上使用 Bash (Git BASH) 進行程式設計。
在我的 bash 腳本中,我想製作我正在運行的 mintty 視窗的螢幕截圖。
根據https://mintty.github.io/minnty 具有「影像截圖匯出」功能。
有人知道如何使用mintty的「圖片截圖匯出」功能嗎?
使用 printf '\e[12i' 似乎不起作用:
#!/usr/bin/env bash
echo "we start in this directory: $(pwd)";
echo "now printing ...";
printf '\e[12i' >/dev/tty; echo "ret1: $?";
[ -t 2 ] && { printf '\e[12i' >&2; echo "ret2: $?"; }
[ -t 1 ] && { printf '\e[12i'; echo "ret3: $?"; }
echo "printed";
ls -rlt | tail -3;
導致
$ 99_tmp1.sh
we start in this directory: /d/_bin01
now printing ...
ret1: 0
ret2: 0
ret3: 0
printed
-rwxr-xr-x 1 zzz91289 1049089 48592 Nov 7 10:39 99_cross_const.sh
-rwxr-xr-x 1 zzz91289 1049089 7327 Nov 7 19:54 99_reset_svc.sh
-rwxr-xr-x 1 zzz91289 1049089 419 Nov 7 20:21 99_tmp1.sh
xxxx@Wxxxx MINGW64 /d/_bin01
$
但我找不到截圖。不在目前目錄中。不在 $HOME 中。
答案1
如何使用「圖片截圖匯出」功能mintty
?
終端內容的影像轉儲
Mintty 可以將終端螢幕的視覺內容儲存在圖片檔案 mintty.date_time.png 中。這是透過上下文選單或用戶可定義的按鍵功能支援的。目前端子尺寸用於影像尺寸,但在 Tek 模式下除外,其中使用原始 Tek 尺寸之一(取決於 12 位元像素位址是否有效)。
(強調我的)
檔案名稱模式和位置是可設定的(設定 SaveFilename)。
來源薄荷味
若要使用 cygwin 儲存圖像mintty
,請右鍵單擊以開啟上下文選單,然後按一下Save as Image
看起來您可以定義關鍵函數來執行此操作。關鍵功能大概可以從腳本執行bash
,但我沒有這樣做的經驗。
答案2
我缺少的是SaveFilename
在.minttyrc文件。
從控制台中,鍵入nano ~/.minttyrc
以開啟設定文件奈編輯。添加以下行(或更改它以滿足您的需要)並保存(參考資料和範例在這裡)。
SaveFilename=$USERPROFILE/Pictures/mintty/%Y-%m-%d_%H-%M-%S
當你打開一個新的Git Bash 視窗中,當您右鍵單擊並選擇「另存為圖像」時,它將使用新設定並將螢幕截圖儲存到您指定的位置/檔案前綴。