Crie um alias ou comando de atalho para executar o programa no Ubuntu

3

Como podemos criar um alias ou um comando de atalho para executar um programa no Ubuntu, eu tenho que iniciar várias sessões de intelliJ e eclipse, toda vez que eu reiniciar meu computador eu tenho que ir para cada diretório e começar o eclipse de lá. Eu quero ter um único comando que pode ser executado a partir do terminal de qualquer diretório para iniciar esses programas.

    
por Navneet Rai 09.11.2017 / 17:38

4 respostas

6

A maneira mais simples seria começar um script que faz isso para você, eu acho.

Algo parecido com isto (a primeira linha é necessária, não é um comentário):

#!/bin/bash
echo "Running 1st app..."
$HOME/path_to_1st/app &     # this runs an app from user's home directory
                            # the ampersand makes the app 'fork'
                            # it means it'll start in the background
                            # and the script will continue to execute
echo "Running eclipse..."
cd directory/project1/
eclipse -param1 -param2 path/to/something &

echo "Running 2nd app..."
cd directory/project2
other_app_executable &

A variável $HOME representa o diretório pessoal do usuário. Tenha em mente que é o usuário que executa o script, não necessariamente você. Salve acima como startmyapps.sh e altere as permissões para torná-lo executável:

chmod u+x startmyapps.sh

O u+x significa:

  • u - u ser
  • + - adicione permissão
  • x - e x ecutável

Para executar startmyapps.sh no terminal a partir de qualquer diretório de trabalho, você pode fazer um alias apontando para seu caminho absoluto (o /home/username/path/to/startmyapps.sh - coisa toda; em aliases ver as outras respostas) ou você precisa colocá-lo em% código%. A maneira mais comum seria salvá-lo no diretório $PATH e adicionar essa linha ao final do seu $HOME/bin/ (ou $HOME/.bashrc ou qualquer outro, dependendo do shell usado, AFAIK .zshrc é o padrão no Ubuntu):

export PATH=$PATH:$HOME/bin

significado:

  • bash - disponibiliza variável para filhos deste terminal
  • export - funciona na variável chamada PATH
  • PATH - atribui um novo valor, que é
  • = - o valor antigo
  • $PATH - um separador
  • : - e seu diretório $HOME/bin recém-criado

Extras

Como nota, gostaria de mencionar o fato de que é comum trabalhar em ambientes virtuais como uma maneira de separar projetos e congelar dependências, por exemplo, A maneira como bin criaria um seria chamar python . Normalmente, esses ambientes vêm com extensões como python -m venv new_env_name que podem ativar um determinado ambiente para você onde quer que você esteja na árvore de diretórios (como em: você não precisa estar no diretório do seu projeto, apenas chame workon ). Todas essas extensões chamam um script inicial de workon new_env_name - então é aí que você adicionaria as chamadas necessárias para iniciar seus aplicativos.

    
por 09.11.2017 / 17:43
4
  1. Para adicionar um atalho de teclado personalizado, abra Configurações do sistema e selecione Teclado - > Guia Atalhos - > Atalhos Personalizados .

  2. Abra qualquer aplicativo, por exemplo, o Eclipse, e faça check-in no aplicativo Monitor do Sistema para localizar o nome do comando para iniciar esse aplicativo a partir do terminal. Por exemplo, o comando para iniciar o Eclipse é eclipse .

  3. Clique no botão + no canto inferior esquerdo do painel Atalhos para adicionar um novo atalho de teclado.

  4. Uma nova pequena janela Atalho personalizado será aberta. Depois de onde diz Nome: digite Eclipse . Depois de onde diz Comando: digite eclipse com um e minúsculo. Clique no botão Aplicar para aplicar o novo atalho de teclado.

    Ocomandoeclipsetambémpodeserpersonalizadoparaabriroeclipsecomargumentosdelinhadecomandopersonalizados.

  5. CliquenoatalhodoEclipsequevocêadicionouàlistadeatalhospersonalizadosemqueeledizDesativado,oquefarácomqueNovoacelerador...apareçadepoisdeondedizEclipsedeDesativado.Pressionequalquercombinaçãodeatalhodetecladoparaatribuí-loaoEclipse.

  6. Para desfazer um atalho de teclado existente, clique no atalho de teclado existente na lista de atalhos e desfaça-o usando a tecla Backspace .

por 09.11.2017 / 18:07
2

Você pode usar o comando alias no seu .bashrc para simplificar comandos (exemplo):

alias toclip='xclip -sel clip'

que sens output saída para a área de transferência usando xclip. Então, para se aproximar da sua pergunta, pode ser:

alias startup='eclipse /path/to/project'

Ou se uma única linha não for suficiente para iniciar tudo o que você precisa, você pode definir uma função em seu .bashrc (exemplo):

function extract {
 if [ -z "$1" ]; then
    # display usage if no parameters given
    echo "Usage: extract <path/file_name>.<zip|rar|bz2|gz|tar|tbz2|tgz|Z|7z|xz|ex|tar.bz2|tar.gz|tar.xz>"
 else
    if [ -f $1 ] ; then
        # NAME=${1%.*}
        # mkdir $NAME && cd $NAME
        case $1 in
          *.tar.bz2)   tar xvjf ../$1    ;;
          *.tar.gz)    tar xvzf ../$1    ;;
          *.tar.xz)    tar xvJf ../$1    ;;
          *.lzma)      unlzma ../$1      ;;
          *.bz2)       bunzip2 ../$1     ;;
          *.rar)       unrar x -ad ../$1 ;;
          *.gz)        gunzip ../$1      ;;
          *.tar)       tar xvf ../$1     ;;
          *.tbz2)      tar xvjf ../$1    ;;
          *.tgz)       tar xvzf ../$1    ;;
          *.zip)       unzip ../$1       ;;
          *.Z)         uncompress ../$1  ;;
          *.7z)        7z x ../$1        ;;
          *.xz)        unxz ../$1        ;;
          *.exe)       cabextract ../$1  ;;
          *)           echo "extract: '$1' - unknown archive method" ;;
        esac
    else
        echo "$1 - file does not exist"
    fi
fi
}

Isto define, por exemplo, um extrato de função que pega qualquer tipo de nome de arquivo e tenta extraí-lo. de modo a mantê-lo mais em linha com o que você quer um pequeno exemplo como poderia ser:

function startup {
    eclipse /path/to/a/AFile
    eclipse /path/to/a/BFile
    eclipse /path/to/a/CFile
    eclipse /path/to/a/DFile
}
O bom dessa abordagem é que você não precisa se preocupar com variáveis de caminho e assim por diante, você as obtém dessa maneira simplesmente quando inicia seu terminal. Os acima são apenas exemplos, você pode colocar o que quiser em seu alias ou sua função, desde que seja compatível com o bash.

    
por 09.11.2017 / 17:49
0

Você pode usar este comando para criar um atalho (link curto), simplesmente:

ln -s /path/to/file /path/to/symlink

Boa sorte!

    
por 09.11.2017 / 17:41

Tags