O problema pode ser devido à maneira como o comando man exibe informações na tela. Você pode contornar isso despejando a man page na tela com:
man -P cat <command name>
IE
try man\ \-P\ cat\ ABRT\-ACTION\-ANALYZ
Eu tenho um script que executa comandos & tira uma captura de tela. Eu quero que o arquivo man exiba & Pegue uma captura de tela dele. Meu script funciona apenas para os comandos, mas se eu adicionar "man" antes do comando, ele apenas fornecerá um erro "man man not found"
try(){
clear
timeout 0.2 $1
re=$?
echo trying $1>>log.txt
echo result is $re>>log.txt
if [ ! $re -eq 127 ]; then
sleep 0.2
import -window osboxes@osboxes:~/Downloads/Parser\ Project\Code/iteration\ 3 iter3/$1.png
echo $1 captured>>log.txt
fi
}
try man\ AB
try man\ ABRT\-ACTION\-ANALYZ
try man\ ABRT\-ACTION\-ANALYZ
try man\ ABRT\-ACTION\-ANALYZ
... etc
A lista de comandos é bastante longa, mas todos eles existem no sistema.
Além disso, se eu tiver apenas:
tente ABRT-ACTION-ANALYZ ou tente AB por exemplo, então ele encontra os comandos & funciona, mas é claro que não mostra o arquivo man.
Por favor, não pergunte o meu porque eu não olho para os arquivos do homem de outra maneira - estou perguntando como fazer este script funcionar.
É possivelmente uma questão de caminho do homem?
O problema pode ser devido à maneira como o comando man exibe informações na tela. Você pode contornar isso despejando a man page na tela com:
man -P cat <command name>
IE
try man\ \-P\ cat\ ABRT\-ACTION\-ANALYZ
try(){
clear
timeout 0.2 man -P cat $1
re=$?
echo trying $1>>log.txt
echo result is $re>>log.txt
if [ ! $re -eq 127 ]; then
sleep 0.2
import -window osboxes@osboxes:~/Downloads/Parser\ Project\Code/iteration\ 3 iter3/$1.png
echo $1 captured>>log.txt
fi
}
Tags shell shell-script