Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

"Criando" um comando
Linux user
Publicado por Thiago Fernandes Gonzaga em 18/04/2008

Login: thiagotj, 24575 pontos
[ Hits: 6319 ]

"Criando" um comando

Pessoal, eu assim como muitos usuários de Linux tenho meus scripts executáveis com um monte de comandos, mas durante um tempo eu tinha que ir até o diretório onde estava este executável e digitar "./script" para ele rodar.

Buenas, isso acabou, agora basta copiar com um simples "cp" ou mover com "mv" o script para o diretório "/usr/local/bin/"; lá ficam todos os comandos que podem ser executados no Linux, executáveis "estrangeiros", que não fazem parte da distro por padrão (palavras de um amigo; Xico).

Espero que facilite a vida de muitos.

Abraço.


Outras dicas deste autor
Nenhuma dica encontrada.

Leitura recomendada
   Dica Linux recomendada O comando grep
   Dica Linux recomendada O comando man
   Dica Linux recomendada Procurando links quebrados
   Dica Linux recomendada Super usuário no modo gráfico
   Dica Linux recomendada Controlando o amarok pela linha-de-comando

Comentários
[1] Comentário enviado por Xico_Ambrozio em 18/04/2008 - 15:59h:

Obrigado pela menção!

:-)

[2] Comentário enviado por Tjdestroyer em 18/04/2008 - 16:52h:

Soh pra complementa, vc pode no lugar de move seu script apenas criar um link simbólico do tipo:
$ ln -s /home/user/script.sh /usr/local/bin

[3] Comentário enviado por hugoeustaquio em 18/04/2008 - 17:16h:

Só pra completar: /usr/local/bin/ não é um diretório para programas 'estrangeiros'. 'usr' significa Unix System Resources, e é lido como um acrônimo para 'user'. Quando você digita um comando no bash e ele executa um programa, é porque o diretório onde este programa se encontra, está no PATH. A sua solução funcionou simplesmente porque '/usr/local/bin/' está no PATH. Caso esses scripts que você crie sejam exclusivamente seus, não é correto colocá-los em /usr/local/bin/. Melhor você criar um diretório 'bin' dentro do seu '/home/usuario/' e adiciona-lo ao PATH.


Caso você queira aprofundar seus conhecimentos sobre isso, comece lendo esse artigo: http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=1379
mas lembre-se que pode mudar o PATH somente para o seu usuário, editando o arquivo '/home/usuario/.bash_profile'

[4] Comentário enviado por tiagotavares em 18/04/2008 - 17:30h:

É uma bela de uma dica! Mas não concordo muito em misturar os comandos nativos com os comandos customizados. Mas aí vai do gosto do fregues.
Eu prefiro adicionar o caminho da pasta onde deixaria os comandos/scripts criados por mim na variável de ambiente PATH em ~/.bash_profile (Se o comando for apenas aplicado para um usuário), ou em /etc/profile (Se o comando se aplicar para todos os usuários).

Abraço!

[5] Comentário enviado por scholla em 19/04/2008 - 01:05h:

Ambos funcionaram...
Obrigado pelas dicas
e como os ultimos amigos
também aderi ao HOME/USUARIO/bin

abraço!!!

[6] Comentário enviado por claudio252 em 19/04/2008 - 15:33h:

´Será que alguém poderia me passar um totorial de server firewall dhcp endian 2.1 ou um mais atual, é que to com dificuldade de configurar o meu que é o endian 2.1 eu ja usei e gostei, mais atualmente não to conseguindo configurar é uma redes de 20 estações e uso um modem d-link 500b
ABRAÇO

[7] Comentário enviado por maran em 19/04/2008 - 20:48h:

hehehe boa dica, é so você ir no terminal e digitar $PATH, que ele ira te listar algo assim

20:47:02 maran§tux:~$ $PATH
bash: /usr/lib/kde4/bin:/usr/lib/kde4/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:

ai você sabe onde pode jogar arquivos ou scripts que você queira que seja executado como um comando sem precisar chamar o caminho todo

XD

[8] Comentário enviado por georgekihoma em 20/04/2008 - 17:53h:

Você poderia fazer isso (executar seu próprio comando num terminal) usando qualquer das abordagens já mencionadas. Mas se você usa o bash como shell, pode apenas criar um alias no seu .bashrc. O bom disso é que apenas o perfil do usuário que tiver o alias usará o comando.

[9] Comentário enviado por chimico em 22/04/2008 - 21:46h:

Não sei como é em outras distros, mas no debian basta apenas criar a parta /home/user/bin e colocar os scripts nela que eles automaticamente estão disponíveis em uma nova aba ou janela de terminal. Isso é devido as seguintes linhas do arquivo .bash_profile :

# set PATH so it includes user's private bin if it exists
if [ -d ~/bin ] ; then
PATH=~/bin:"${PATH}"
fi

Assim você tem acesso ao PATH definido pelo sistema e a ele é adicionado a sua pasta bin apenas para seu usuário.

[10] Comentário enviado por hugoeustaquio em 23/04/2008 - 09:52h:

Bacana essa coisa do Debian colocar um ~/bin/ automaticamente no path caso esse diretório exista. Sempre gosto de saber essas coisinhas sobre as distros. O Slackware coloca o diretório corrente no path dos usuários não-root. E o bom é que todos os scripts do slack são bem comentados! Veja só:

# For non-root users, add the current directory to the search path:
if [ ! "`id -u`" = "0" ]; then
PATH="$PATH:."
fi

O ponto (.) no final do path representa sempre o diretório corrente.

[11] Comentário enviado por juliaojunior em 25/04/2008 - 18:37h:

dica muito boa, principalmente para iniciantes.

[12] Comentário enviado por thiagotj em 28/04/2008 - 12:40h:

Valeu pelos comentários ...

[13] Comentário enviado por Thiago Madella em 17/09/2008 - 11:54h:

Bom muito bom, mesmo.


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.