Preciso da ajuda de vocês para criar um script interagente [RESOLVIDO]

1. Preciso da ajuda de vocês para criar um script interagente [RESOLVIDO]

Iago Lira
iagolira

(usa Debian)

Enviado em 18/06/2015 - 15:15h

Olá pessoal!
Estou querendo criar um script para ajudar a compilar um arquivo em latex pelo terminal. Só que fazer isso muitas vezes é tedioso, então estou querendo criar um script que faça o seguinte:

 ./script.sh arquivo.tex  


Mas não sei fazer ainda esse tipo de interação!
Se alguém poder me ajudar a resolver esse problema ficarei muito agradecido



  


2. MELHOR RESPOSTA

Wellington
wellington_r

(usa Debian)

Enviado em 19/06/2015 - 10:01h

passosfil escreveu:

wellington_r escreveu:


Não sei o que é latex, mas não entendi o que você quer.
Quer um script que execute outro script passando como parâmetro arquivo.tex?



É o seguinte, no arquivo *.sh contém as seguintes linhas:


#!/bin/bash
latex arquivo.tex
bibtex arquivo #sem a extensão .tex
latex arquivo.tex
latex arquivo.tex
pdflatex arquivo.tex

Nome: Francisco Iago Lira Passos
Curso: Bacharelado em Física


Você quer que o arquivo.tex seja variável, é isso?

Por exemplo, você quer executar
./script.sh meuprimeiroarquivo.tex
./script.sh meusegundoarquivo.tex

Se for isso, é só você fazer assim:

#!/bin/bash
latex $1
bibtex $(basename $1 .tex) #sem a extensão .tex
latex $1
pdflatex $1


O $1 substitui é substituído pelo primeiro parâmetro passado para o comando, assim como o $2 pelo segundo parâmetro e assim por diante. O $0 é substituído pelo nome do próprio comando.
Por exemplo, o arquivo testando.sh, contendo:

#!/bin/bash
echo "O primeiro parâmetro digitado foi: $1"
echo "O segundo parâmetro digitado foi: $2"
echo "O comando digitado foi: $0"
echo "A quantidade parâmetros digitados foi: $#"
echo "Segue os parâmetros em lista: $@"


Executado por:

./testando.sh parA parB


Dá a saída:

O primeiro parâmetro digitado foi: parA
O segundo parâmetro digitado foi: parB
O comando digitado foi: ./testando.sh
A quantidade parâmetros digitados foi: 2
Segue os parâmetros em lista: parA parB









3. Re: Preciso da ajuda de vocês para criar um script interagente [RESOLVIDO]

Wellington
wellington_r

(usa Debian)

Enviado em 18/06/2015 - 16:38h


Não sei o que é latex, mas não entendi o que você quer.
Quer um script que execute outro script passando como parâmetro arquivo.tex?


4. Re: Preciso da ajuda de vocês para criar um script interagente [RESOLVIDO]

Iago Lira
iagolira

(usa Debian)

Enviado em 19/06/2015 - 02:20h

wellington_r escreveu:


Não sei o que é latex, mas não entendi o que você quer.
Quer um script que execute outro script passando como parâmetro arquivo.tex?



É o seguinte, no arquivo *.sh contém as seguintes linhas:


#!/bin/bash
latex arquivo.tex
bibtex arquivo #sem a extensão .tex
latex arquivo.tex
latex arquivo.tex
pdflatex arquivo.tex

Nome: Francisco Iago Lira Passos
Curso: Bacharelado em Física


5. Re: Preciso da ajuda de vocês para criar um script interagente [RESOLVIDO]

Iago Lira
iagolira

(usa Debian)

Enviado em 19/06/2015 - 12:38h

wellington_r escreveu:

passosfil escreveu:

wellington_r escreveu:


Não sei o que é latex, mas não entendi o que você quer.
Quer um script que execute outro script passando como parâmetro arquivo.tex?



É o seguinte, no arquivo *.sh contém as seguintes linhas:


#!/bin/bash
latex arquivo.tex
bibtex arquivo #sem a extensão .tex
latex arquivo.tex
latex arquivo.tex
pdflatex arquivo.tex

Nome: Francisco Iago Lira Passos
Curso: Bacharelado em Física


Você quer que o arquivo.tex seja variável, é isso?

Por exemplo, você quer executar
./script.sh meuprimeiroarquivo.tex
./script.sh meusegundoarquivo.tex

Se for isso, é só você fazer assim:

#!/bin/bash
latex $1
bibtex $(basename $1 .tex) #sem a extensão .tex
latex $1
pdflatex $1


O $1 substitui é substituído pelo primeiro parâmetro passado para o comando, assim como o $2 pelo segundo parâmetro e assim por diante. O $0 é substituído pelo nome do próprio comando.
Por exemplo, o arquivo testando.sh, contendo:

#!/bin/bash
echo "O primeiro parâmetro digitado foi: $1"
echo "O segundo parâmetro digitado foi: $2"
echo "O comando digitado foi: $0"
echo "A quantidade parâmetros digitados foi: $#"
echo "Segue os parâmetros em lista: $@"


Executado por:

./testando.sh parA parB


Dá a saída:

O primeiro parâmetro digitado foi: parA
O segundo parâmetro digitado foi: parB
O comando digitado foi: ./testando.sh
A quantidade parâmetros digitados foi: 2
Segue os parâmetros em lista: parA parB









Era isso mesmo! Muito obrigado!

Nome: Francisco Iago Lira Passos
Curso: Bacharelado em Física






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts