Sempre que abro um arquivo .sh, ele é aberto no gedit em vez do terminal. Não encontro nenhuma opção semelhante a Clique com o Botão Direito → Abrir com → Outra Aplicação ... → Terminal .
Como faço para abrir este arquivo no terminal?
Sempre que abro um arquivo .sh, ele é aberto no gedit em vez do terminal. Não encontro nenhuma opção semelhante a Clique com o Botão Direito → Abrir com → Outra Aplicação ... → Terminal .
Como faço para abrir este arquivo no terminal?
ruby foo.rb
Respostas:
Dê permissão de execução ao seu script:
E para executar seu script:
Como
.
se refere ao diretório atual: seyourscript.sh
estiver no diretório atual, você pode simplificar isso para:fonte
bash /path/to/yourscript.sh
, então você não precisachmod +x
. /path/to/yourscript.sh
se o script precisar configurar algumas variáveis de ambiente../path/to/yourscript.sh
(sem o espaço depois.
)? Acho que um é o mais simples e fácil de usar ... Mas, de qualquer forma, aqui está a minha alternativa que deve fazer quase o mesmo que./
faria, embora eu não perceba por que você não usaria./
:(FILENAME=~/rem4space.sh;SLL=$(cat $FILENAME|head -1|sed 's:^#!\(.*\):\1:g');[ ! -z $SLL ] && exec $SLL $FILENAME;sh $FILENAME)
... editeFILENAME
a seu gosto . Observe também quesh
será usado se não houver alternativa.Você precisa marcar os scripts de shell como executáveis para executá-los no gerenciador de arquivos:
Clique com o botão direito do mouse no seu
.sh
arquivo e selecione Propriedades :Na guia Permissões , marque Permitir a execução de arquivo como programa :
Feche a janela Propriedades e clique duas vezes no arquivo. Uma caixa de diálogo será exibida, oferecendo a opção de executar o script em um terminal:
fonte
Abra um terminal e navegue até a pasta em que o
.sh
arquivo está localizado. Então digite:fonte
Pré-requisito
Antes de poder executar o arquivo .sh, é necessário torná-lo executável:
Aviso
Confie na fonte de onde você obteve o arquivo. Pode ser um vírus .
A maneira muito simples
Isso tem problema. O terminal fechará imediatamente e você não poderá ver a saída.
A maneira simples
A maneira como os profissionais fazem isso
Encontre onde o arquivo .sh
ls
ecd
ls
listará os arquivos e pastas na pasta atual . Experimente: digite "ls" e pressione Enter.cd
, seguido por um espaço, seguido por um nome de pastacd ..
para ir um nível acimaExecute o arquivo .sh
Uma vez que você pode ver, por exemplo
script1.sh
, comls
prazo isso:Por que fazer isso da maneira complicada?
O terminal possui um rico conjunto de ferramentas poderosas acessíveis digitando os comandos. Profissionais localizam o arquivo .sh digitando
ls
ecd
. Quando você estiver na pasta atual correta, poderá executar o script assim:ou você pode executar e redirecionar a saída para um arquivo:
ou você pode filtrar a saída de palavras-chave (por exemplo, "maçãs") e depois redirecionar para um arquivo:
Existem milhares de coisas que você pode fazer nesse arquivo apenas digitando alguns comandos.
Outro, você pode baixar um arquivo da Internet com um comando simples:
E então abra o arquivo assim:
fonte
No Ubuntu 13.04, os arquivos executáveis abertos no Nautilus agora são abertos no gedit por padrão, em vez de solicitar ao usuário que os execute. Para habilitar o comportamento clássico, você precisa ajustar as preferências:
Nautilus → menu Editar → Preferências → guia Comportamento → Clique no botão de opção próximo a Perguntar a cada vez.
fonte
Vá para o diretório em que o
.sh
arquivo está usandocd
. Neste exemplo, eu armazenei meush
arquivo como~/Desktop/shell_practice/test.sh
primeiro faça
pwd
para descobrir onde você está e, se ele retornar/home/username
(ondeusername
está seu nome de usuário real), você poderá executarSe você parece estar em outro lugar, pode usar o caminho absoluto
ou
ou mesmo
essas são todas as formas de descrever o mesmo lugar. Depois de chegar ao local do seu script, digite
Se você puder ver o
sh
arquivo na saída, poderá usáchmod
-lo para torná-lo executável. No meu caso, lembre-se, o nome do arquivo étest.sh
, então eu correriaAgora que estamos no mesmo diretório que o script, precisamos especificar para o shell que queremos executar o arquivo, fornecendo sua localização
./
(o diretório atual seguido por um separador de caminho, para distingui-lo do nome do arquivo). Para executar meu arquivo, digitei:Se o seu script foi escrito corretamente, ele será executado sem erros ...
Aqui está um exemplo ao vivo:
fonte
2 etapas principais.
no terminal, use o gedit para escrever e salvar scripts com a extensão ".sh" na área de trabalho. (mas qualquer editor de texto pode ser usado)
abra o Nautilus e clique com o botão direito do mouse no arquivo script.sh.
nas propriedades, marque a caixa de seleção "permitir a execução do arquivo .."
no menu Nautilus, clique em arquivo, em preferências e depois em comportamento
marque a opção "executar arquivos de texto executáveis quando abertos".
Agora, quando você clica duas vezes no arquivo na área de trabalho, ele deve ser executado. não há necessidade
.
ou./
fonte
Clique com o botão direito do mouse no
.sh
arquivo e torne-o executável.Abra um terminal ( Ctrl+ Alt+ T).
Arraste o
.sh
arquivo para a janela do terminal e assista com admiração.fonte
Há algumas maneiras de fazer isto.
Opção 1
No terminal, acesse o diretório em que o arquivo Bash está
cd
(alterar diretório).Ex.
cd Downloads
Corre
bash <filename>.sh
Isso também funciona com arquivos .run. Há um exemplo desse uso nesta página da Web sobre a atualização do Rhythmbox.
opção 2
No terminal, navegue até o diretório em que o arquivo bash está.
Corre
chmod +x <filename>.sh
No Nautilus, abra o arquivo.
fonte
Para o Ubuntu 18.04 , há uma pequena modificação, pois você não recebe uma caixa de diálogo pop-up.
Então, o que você precisa fazer é:
Clique com o botão direito do mouse em Arquivos, selecione Preferências> selecione a guia Comportamento> Marque a opção 'Pergunte o que fazer' em Arquivo de texto executável.
Agora, quando você clica duas vezes em qualquer arquivo .sh, é exibida uma janela pop-up. Lá você pode selecionar a opção "executar no terminal" para executar o arquivo .sh.
fonte
No Ubuntu 16.04, é como abri-lo no Terminal:
Vá para
File Manager > Edit > Preferences > Behavior
paraExecutable Text Files
e selecioneAsk each time
.O problema é que é por padrão definido como
View Executable Files when they are opened
.fonte
Se você colocar seu shell script ou outro executável criado em / usr / local / bin, ele será encontrado e executado sem precisar fornecer um caminho de pasta na linha de comando ou adicionar ./ ao nome. Por exemplo, criei o seguinte script bash simples de 3 linhas para exibir os UUIDs de disco:
Liguei para o arquivo uuid e o coloquei em / usr / local / bin. Tudo o que preciso inserir na linha de comando é:
fonte
Bem, eu também enfrentei o mesmo problema. Eu queria executar o arquivo .sh e ele foi aberto com o Gedit no CentOS 7. Então, aqui está o que eu fiz:
.sh
arquivo que queria executar.fonte
O problema que encontrei em algumas distribuições é que elas ocultaram a opção de preferências no Nautilus, mas corrigi-lo no Ubuntu e outras distribuições usando o Gnome3 é o mesmo (literalmente, acabei de fazer a versão do Fedora e postar a correção real para me lembrar como no futuro).
Instalar
dconf-editor
Executar
dconf-editor
usando a conta de usuário em que você deseja isso, ou seja, NÃO raizNavegue para o seguinte esquema:
org.gnome.nautilus.preferences
Altere a opção padrão para não abrir por padrão:
Localize,
executable-text-activation
clique na palavradisplay
e mude paraask
que lhe dará a opção de editar, visualizar ou executar o arquivo daqui para frente
fonte
Eu sou um noob no Linux e só tive o mesmo problema. Se todo o resto falhar:
fonte
Você também pode usar
.
truques, com a sugestão de outras respostas.Por exemplo:
chmod +x filename.sh
, supondo que você já tenha acessado o caminho do arquivo, execute o arquivo com qualquer um destes comandos:fonte