Os argumentos que você fornece para um bashscript aparecerão nas variáveis $1
e $2
e $3
onde o número se refere ao argumento. $0
é o próprio comando.
Os argumentos são separados por espaços, portanto, se você fornecer o -from
e -to
no comando, eles terminarão nessas variáveis também, para isso:
./ocrscript.sh -from /home/kristoffer/test.png -to /home/kristoffer/test.txt
Você terá:
$0 # ocrscript.sh
$1 # -from
$2 # /home/kristoffer/test.png
$3 # -to
$4 # /home/kristoffer/test.txt
Pode ser mais fácil omitir o -from
e o -to
, como:
ocrscript.sh /home/kristoffer/test.png /home/kristoffer/test.txt
Então você terá:
$1 # /home/kristoffer/test.png
$2 # /home/kristoffer/test.txt
A desvantagem é que você terá que fornecê-lo na ordem certa. Existem bibliotecas que podem tornar mais fácil analisar argumentos nomeados na linha de comando, mas geralmente para scripts de shell simples, você deve usar o caminho mais fácil, se não houver problema.
Então você pode fazer:
/usr/local/bin/abbyyocr9 -rl Swedish -if "$1" -of "$2" 2>&1
As aspas duplas em torno de $1
e $2
nem sempre são necessárias, mas são recomendadas, porque algumas strings não funcionarão se você não as colocar entre aspas duplas.