Atalhos nas configurações do sistema - > "Teclado" - > "Atalhos" - > "Atalhos personalizados" não são executados em um shell.
É por isso que gnome-screenshot -a -f /home/manuel/Desktop/"'date'".png
cria um arquivo chamado "'date'.png"
; a parte /home/manuel/Desktop/"'date'".png
não é interpretada e é passada textualmente para gnome-screenshot
, o que cria um arquivo chamado "'date'.png"
.
bash -c "gnome-screenshot -a -f /home/manuel/Desktop/"'date'".png"
não funciona simplesmente porque você não está escapando do segundo nível de cotações, o que faz com que o Bash execute date
em uma subshell que está sujeita à divisão de palavras.
Então, é só escapar do segundo nível de citações:
bash -c "gnome-screenshot -a -f /home/manuel/Desktop/\"'date'\".png"
Ou melhor ainda, use aspas simples no comando externo para não ter que escapar de um segundo nível de citações:
bash -c 'gnome-screenshot -a -f /home/manuel/Desktop/"'date'".png'
Em uma nota secundária usando ''
está obsoleta e desestimulada; seria melhor usar $()
:
bash -c 'gnome-screenshot -a -f /home/manuel/Desktop/"$(date)".png'