Jump to content

shell script em linux


dario1133

Recommended Posts

#!/bin/bash
ls "$1" | grep -e ".*[0-9].*\.txt"

Gravas como um ficheiro qualquer (p.e: listn) e depois é só fazer:

./listn nome_da_pasta

❝The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.❞- John Carmack on software patents

A list  of command line apps

Link to comment
Share on other sites

Se o script estiver na numa pasta /home/dario/scripts, por exemplo, fazes:

/home/dario/scripts/listn   /etc

❝The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.❞- John Carmack on software patents

A list  of command line apps

Link to comment
Share on other sites

Não, é suposto gravar no script o que te dei no meu primeiro post:

#!/bin/bash
ls "$1" | grep -e ".*[0-9].*\.txt"

E depois quando executas o script, passas-lhe a pasta:

./script.sh  /etc

Assim o mesmo script funciona para qualquer pasta que lhe passes.

❝The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.❞- John Carmack on software patents

A list  of command line apps

Link to comment
Share on other sites

na parte final ainda me faz confusão.

se eu guardar o script.sh no Desktop, e a minha pasta etc por exemplo ta nos meus documentos, ao executar o script faço:

./script.sh  /etc

ou

./script.sh  /Dektop/documentos/etc

no exemplo de cima tando eu no desktop ele consegue aceder a outras pasta se nao as que tao também no Desktop?

Link to comment
Share on other sites

Sim, ele consegue aceder a qualquer pasta, mas se a pasta está numa pasta do Desktop, tens que a indicar:

./script.sh /home/dario/Desktop/documentos/etc

❝The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.❞- John Carmack on software patents

A list  of command line apps

Link to comment
Share on other sites

na parte final ainda me faz confusão.

se eu guardar o script.sh no Desktop, e a minha pasta etc por exemplo ta nos meus documentos, ao executar o script faço:

./script.sh  /etc

ou

./script.sh  /Dektop/documentos/etc

no exemplo de cima tando eu no desktop ele consegue aceder a outras pasta se nao as que tao também no Desktop?

Se estiveres na pasta /home/dario/Desktop e o script estiver lá, podes escrever apenas

./script.sh /etc

se estiveres na pasta /etc terás que especificar a path do script

/home/dario/Desktop/script.sh /etc

Uma forma de contornares isso é colocares o script numa pasta que esteja na variável de ambiente $PATH.

Eu tenho uma pasta para scripts dentro da minha pasta de utilizador, depois no meu ficheiro .bashrc tenho isto no fim:

PATH=~/myscripts:$PATH

a partir daí para correr o script, basta escrever

script.sh /etc

e funcionará, estando tu na pasta que estiveres

EDIT:

icebrain, penso que ele se está a referir à pasta do sistema /etc e não a /home/dario/Desktop/documentos/etc

Link to comment
Share on other sites

eu tou na pasta /home/ubuntu/Desktop, e é aqui que tenho o meu script de nome 1.sh, o script é:

#!/bin/bash

ls "$1" | grep -e ".*[0-9].*\.txt"

quero aceder à pasta /etc que se encontra algures no sistema, se executar:

. 1.sh  /etc

assim consigo executar bem o meu programa??

eu ja experimentei assim e nao deu...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.