Como eu digito na próxima linha no Terminal?

14

Estou usando o Ubuntu 12.10 e quero executar um conjunto de comandos no terminal e, pelo que vejo nas instruções, esses comandos iniciam em uma nova linha. Eu não sei como fazer isso no terminal. Não consigo encontrar qual tecla pressionar para fazer o retorno do carro até a próxima linha.

    
por Debbie Poole 06.12.2012 / 17:45

5 respostas

16

Os comandos que você vê em cada linha devem ser executados um por um.

Então, depois de inserir uma linha, pressione Enter para executar e, em seguida, execute o próximo comando.

Exemplo:

sudo apt-get update
sudo apt-get upgrade

Estes são dois comandos para serem executados um por um.

Para executar de uma só vez, será como sudo apt-get update && sudo apt-get upgrade (existem outros métodos também), mas isso geralmente não é necessário. Então não se preocupe. Digite uma linha e pressione enter fará o trabalho.

    
por Web-E 06.12.2012 / 17:50
10

Como Web-E explica a maneira mais direta de fazer o que você quer com dois comandos diferentes, eu pensei Eu mostraria que existem várias maneiras de executar vários comandos ou continuar comandos em outra linha sem executá-los imediatamente.

Continuação de comandos longos:

1) A maneira mais comum de construir um longo comando é digitar seus comandos, depois usar uma barra invertida \ , pressionar retornar e, em seguida, o Bash fornecerá outro prompt para você em vez de executar o comando. Este prompt secundário é chamado PS2 e aguarda sua entrada:

find /home/mike/Downloads -type f -iname '*.jpg' \
> 

Você pode continuar adicionando barras invertidas e pressionando a tecla de retorno por quanto tempo quiser, contanto que o comando geral faça sentido.

Você pode cancelar este prompt secundário com a Ctrl + C normal.

2) O Bash reconhece alguns comandos como for loops (para i in ....) e o prompt aparecerá imediatamente; assim como será se você perder uma aspa de um comando:

apt-cache search 'libgimp*
> 

Múltiplos comandos :

3) Como observa Lxnslck , você pode separar os comandos com ponto e vírgula:

which vlc; whereis vlc

/usr/bin/vlc
vlc: /usr/bin/vlc /etc/vlc /usr/lib/vlc /usr/bin/X11/vlc /usr/share/vlc /usr/share/man/man1/vlc.1.gz

4) Ou você pode usar o e comercial && para unir dois comandos:

./configure && make
    
por user76204 06.12.2012 / 18:09
4

Você pode pressionar a tecla ENTER após cada linha e se o comando não for terminado (comandos mutiline como for loops por exemplo), o terminal esperará que você digite o restante do comando. Se o comando for finalizado, ele será executado e você entrará no próximo comando depois, sem problemas.

Se você estiver copiando os comandos de um tutorial, poderá copiar todo o grupo de comandos e colá-lo diretamente no terminal e ele funcionará.

    
por laurent 06.12.2012 / 17:51
1

Quando é um conjunto de comandos que você espera usar mais de uma vez, você deve colocá-los em um arquivo de script bash . Por exemplo,

xrandr --newmode "1280x960_80.00" 139.25  1280 1368 1504 1728  960 963 967 1008 -hsync +vsync
xrandr --verbose --addmode VGA1 "1280x960_80.00"
xrandr --output HDMI1 --off --output LVDS1 --mode 1366x768 --pos 1280x512 --rotate normal --output DP1 --off --output VGA1 --mode "1280x960_80.00" --pos 0x0 --rotate normal
sleep 3
xfce4-panel -r

não é nada que você queira digitar nunca mais, mas acontece que eu preciso dessa seqüência particular de comandos com muita frequência. Por isso, vai em um arquivo chamado 1280x980-2head.sh , você pode criar isso com qualquer editor de sua escolha. Para tornar esse script executável , você coloca a linha #!/bin/bash na frente de tudo (a shebang ) e defina a permissão de execução: chmod +x 1280x980-2head.sh . Em seguida, apenas digitando ./128<tab> (preenchimento automático) e <enter> executará todos os comandos.

    
por leftaroundabout 06.12.2012 / 22:07
0

Você pode colocar tudo entre colchetes; por exemplo:

(sudo add-apt-repository ppa:foo/bar
sudo apt-get update
sudo apt-get install my-package)

Os comandos serão executados um após o outro em um sub-shell.

Se você não quer que eles sejam executados em um sub-shell, você pode colocar um ponto-e-vírgula entre um comando e outro; por exemplo:

sudo add-apt-repository ppa:foo/bar; sudo apt-get update; sudo apt-get install my-package

Em vez disso, se você colocar "& amp; & amp;" entre cada comando, o comando que segue o "& amp; & amp;" será executado somente se o comando anterior tiver terminado sem erro, então você não precisa usá-lo para concatenar comandos; use ponto e vírgula em vez disso. Por outro lado, se você colocar "||", o seguinte comando será executado apenas se o primeiro sair com um erro. Exemplo: (o comando "which" verifica se existe um programa e se ele não sai com um erro)

which apt-get && echo "No error" || echo "Error"    # Will print "No error"
which jdhdsd && echo "No error" || echo "Error"  # Will print "Error"
    
por Depaulicious 13.12.2012 / 22:51