Como eu configuro e uso variáveis do shell?

1
IRSTLM=$HOME/irstlm

Preciso de ajuda para configurar essa variável. Estava imaginando se essa é a sintaxe correta

IRSTLM=/home/user/irstlm

É possível executar a partir do root? Eu preciso que isso seja feito na raiz, a fim de acessar certos arquivos, eu também posso adicionar o resto do comando que estou tentando executar, se você gostaria de ver o contexto que está sendo usado inn.

Novo problema, não sei por que, mas isso não deveria dar saída ao arquivo com extensão .arpa? Eu não consigo obter esse arquivo e eu preciso que ele execute o próximo comando para concluir a compilação deste programa.

~/irstlm/bin/add-start-end.sh  < ~/corpus/news-commentary-v7.fr-en.true.en > news-commentary-v7.fr-en.sb.en export IRSTLM=$HOME/irstlm; ~/irstlm/bin/build-lm.sh -i  news-commentary-v7.fr-en.sb.en  -t ./tmp  -p -s improved-kneser-ney -o news-commentary-v7.fr-en.lm.en 

Aqui está o comando completo:

/home/user/irstlm/bin/add-start-end.sh  < /home/user/corpus/news-commentary-v7.fr-en.true.en > news-commentary-v7.fr-en.sb.en export IRSTLM=$HOME/irstlm; /home/user/irstlm/bin/build-lm.sh -i  news-commentary-v7.fr-en.sb.en  -t ./tmp  -p  -s improved-kneser-ney -o news-commentary-v7.fr-en.lm.en 
    
por Ferdinand 26.06.2012 / 17:22

2 respostas

0

Eu percebi isso, obrigado pelas sugestões, eles definitivamente ajudaram, aqui o último comando que eu rodei, parece que eu não estava definindo corretamente a variável como "irstlm = / root / irstlm" comando final:

 /root/irstlm/bin/add-start-end.sh < /home/user/corpus/news-commentary-v7.fr-en.true.en> news-commentary-v7.fr-en.sb.enexport IRSTLM=$HOME/irstlm; /root/irstlm/bin/build-lm.sh -i news-commentary-v7.fr-en.sb.en -t ./tmp -p -s improved-kneser-ney -o news-commentary-v7.fr-en.lm.en 
    
por Ferdinand 26.06.2012 / 18:30
3

Se for um comando único, é melhor simplesmente configurá-lo para esse comando, por exemplo:

IRSTLM=/home/user/irstlm /home/user/irstlm/bin/add-start-end.sh  \
  < /home/user/corpus/news-commentary-v7.fr-en.true.en > news-commentary-v7.fr-en.sb

Se for parte de um script, use:

export IRSTLM=/home/user/irstlm
/home/user/irstlm/bin/add-start-end.sh < /home/user/corpus/news-commentary-v7.fr-en.true.en > news-commentary-v7.fr-en.sb
    
por Thor 26.06.2012 / 17:49