Propósito de / usr / local / bin / no sistema LINUX

1

Não há. de scripts presentes neste caminho /usr/local/bin/ . Para o usuário, as instruções são para digitar o nome do script <script_name> no prompt [username@servername]$ . Como isso pode ser possível que eu não digite ./script_name e script começou a mostrar resultados na saída padrão apenas escrevendo o nome do script no prompt do usuário? Pode ser interessante saber sobre / usr / local / bin / no sistema LINUX: -)

    
por Ashish 24.09.2010 / 10:37

4 respostas

1

Em sistemas BSD, todos os softwares (portas) que não são do sistema são instalados em /usr/local por padrão.

Na maioria das distribuições Linux, ele deve ser usado para software instalado pelo administrador local a partir da origem, ignorando o gerenciador de pacotes de distribuição.

    
por 24.09.2010 / 10:41
1

/usr/local é para coisas que você não quer destruir ao atualizar o sistema operacional.

O sistema operacional está livre para explodir tudo o que quiser em /usr/bin et al, a variação local foi configurada para evitar que isso destrua seu material que não é do sistema operacional.

E, colocando todo esse material local ( bin , etc e assim por diante) sob um ponto de controle, é muito fácil fazer backup de um site (em vez de ter que obter /bin , /etc , /lib e assim por diante para o material OS) - você acabou de fazer o backup de toda a hierarquia /usr/local .

Se você for echo $PATH , provavelmente descobrirá que /usr/local/bin está lá. Como alternativa, tente which PROG (substituindo PROG pelo nome real do programa) para ver onde ele está sendo encontrado:

pax> pwd
/home/pax

pax> echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin

pax> ls /usr/local/bin/ico*
iconv

pax> which iconv
/usr/local/bin/iconv

pax> iconv -?
Usage: iconv [-c] [-s] [-f fromcode] [-t tocode] [file ...]
or:    iconv -l
Try 'iconv --help' for more information.
    
por 24.09.2010 / 10:42
0

/ usr / local / bin é provavelmente parte do seu caminho

    
por 24.09.2010 / 10:42
0

Para responder ao seu título sobre o propósito do / usr / local / bin  / usr / local são para software local para a máquina, geralmente instalados manualmente (e não através de um gerenciamento de pacotes como rpm ou deb)

Para responder à sua pergunta atual, acho que você deve aprender sobre a variável PATH. tente echo $ PATH em um terminal

./ somescript.sh significa que você está esperando que o script esteja no diretório atual (o.) se você não colocar nenhum caminho, apenas o nome de um comando, o shell procurará no PATH para encontrar o comando (a menos que seja um comando interno do seu shell).

    
por 24.09.2010 / 10:50

Tags