Posso usar um comando (como “tree”) sem instalá-lo em todo o sistema?

3

Estou conectado a uma caixa do Linux por meio do SSH, no qual não tenho privilégios administrativos. O comando que desejo usar é chamado de tree , mas não está instalado.

Existe alguma maneira de carregar o programa tree em meu diretório pessoal e executá-lo sem a necessidade de instalá-lo em todo o sistema?

    
por Corey T Foote 20.09.2010 / 00:48

3 respostas

3

tree parece não ter dependências particulares (libc6), então eu acho que você pode simplesmente copiar o executável (localizado em which tree em outro sistema com tree instalado ou como alternativa você pode compilá-lo a partir da fonte, < um href="http://mama.indstate.edu/users/ice/tree/"> aqui é a página inicial do projeto) em um diretório na caixa do Linux que você está conectado, digamos ~/bin/ , você só precisa atualizar sua variável de ambiente $PATH para adicionar esse diretório.

Se você estiver usando Bash , coloque isso em ~/.bashrc :

PATH=$PATH:~/bin/

Observação: não se esqueça de combinar arquitetura e sistema operacional.

    
por 20.09.2010 / 01:07
3

Você normalmente cria e instala no prefixo $HOME . Isso significa que o binário entraria em $HOME/bin , bibliotecas em $HOME/lib e assim por diante. Então você garante que esses diretórios apareçam em $PATH , $LD_LIBRARY_PATH , $MAN_PATH , etc (normalmente editando seus arquivos de inicialização do shell) e funcionará de forma transparente.

Aqui está uma receita que funcionará com muitos programas

$ cd $HOME
$ mkdir src
$ cd src
$ wget http://host.name/path/to/program.tgz
$ tar xzfv program.tgz
$ cd program
$ ./configure --PREFIX=$HOME
$ make
$ make install

Note que, ao contrário da instalação em /usr/local , nunca há necessidade de privilégios de root.

    
por 20.09.2010 / 02:29
1
cd $HOME
# download latest tree source to home directory
wget http://mama.indstate.edu/users/ice/tree/src/tree-1.7.0.tgz
# unpack
tar xzfv tree-1.7.0.tgz
cd tree-1.7.0/
make
# install to $HOME directory
make install prefix=$HOME/bin
# this will create folders bin, and man
cd $HOME
# remove original source folder
rm -rf tree-1.7.0

# run tree
$HOME/bin/tree
# view man page
$HOME/man tree
    
por 10.11.2016 / 23:24