Este comando de tela funciona perfeitamente no terminal, mas não se eu ligá-lo a uma chave

-1

Estou tentando fazer com que o Gnome Screenshot tire e salve capturas de tela com um pressionamento de tecla, mas me deparei com um problema. O comando que estou usando funciona perfeitamente no terminal, mas não quando eu o vinculo a uma chave. Quando eu pressiono a tecla de ligação (Print Screen, neste caso), nada acontece. Nenhum erro, nada.

gnome-screenshot -f "$HOME/Pictures/Screenshots/Test $(date '+%F %T').png"

Atualmente estou tentando diferentes ajustes no comando. Atualmente, eu comecei a trabalhar omitindo o caminho, mas a parte "$(date "+%F %T")" não funciona corretamente quando eu faço isso, o que me coloca de volta onde eu estava antes. Antes, eles levavam o mesmo nome e na minha pasta Home, fazendo com que eles fossem sobrescritos.

    
por Beth C 15.05.2017 / 01:30

2 respostas

1

Os comandos de atalhos de teclado não são executados em um contexto de shell. Portanto, a interpolação de comando não funciona.

Você pode criar um script em, digamos, $HOME/.local/bin/screenshot , que contém:

#!/usr/bin/env bash
gnome-screenshot -f "$HOME/Pictures/Screenshots/Test $(date '+%F %T').png"

chmod +x , em seguida, vincule a chave desejada.

Você também pode usar scrot em vez de gnome-screenshot , cujos nomes de arquivo padrão incluem um registro de data e hora.

    
por dhasenan 15.05.2017 / 21:49
0
% bl0ck_qu0te%

chmod altera as permissões de um arquivo. Essa configuração determina quem pode ler / gravar / executar um arquivo. chmod + x permite que o arquivo seja executado diretamente. Outras leituras seria a manpage para chmod e este artigo explicando shebangs.

Duas outras coisas que não valem nada.

  1. Já tentou ligar a uma chave diferente? Aplicativos que têm foco geralmente são capazes de decidir como lidar com eventos de entrada. Isso significa que o vapor pode interceptar o PrtSc, informar ao SO que ele manipulou o pressionamento de tecla e, então, não fazer nada com ele. Isso pode ser verdade para todas as chaves, deixando você sem sorte.

  2. Aplicativos de tela cheia geralmente são renderizados de forma diferente de aplicativos em janelas. Saber que eles estão em tela cheia permite que o aplicativo pule algumas etapas de renderização, o que aumenta o desempenho. Eu não sei o suficiente para dizer com certeza se este é realmente o caso, mas não é razoável pensar que o mecanismo de captura de tela da ferramenta que você está usando não é capaz de capturar a tela de aplicativos em tela cheia. Você pode testar isso executando o jogo no modo de janela. Já que parece que você pode tirar screenshots do jogo, embora com um atraso, este provavelmente não é o problema.

por Josh A. 16.05.2017 / 01:47