Como abrir um arquivo enquanto você digita seu diretório?

1

Eu sou novo em usar o terminal no Ubuntu e fiquei me perguntando como eu poderia abrir o arquivo "armored.jpg" enquanto digito o caminho inteiro.

Por exemplo, se eu digitar cd ~/Pictures/Wallpapers/test\ x/ e depois digitar xdg-open armored.jpg no diretório atual, a imagem será aberta.

No entanto, quando digito:

cd ~/Pictures/Wallpapers/test\ x/ xdg-open armored.jpg

ou

cd ~/Pictures/Wallpapers/test\ x/armored.jpg

ou

cd ~/Pictures/Wallpapers/test\ x/armored

não funciona.

Alguém pode explicar por que isso acontece? Eu quero saber se consigo abrir o arquivo com algo assim:

cd ~/Pictures/Wallpapers/test\ x/**command goes here**/armored.jpg

Obrigado

    
por Drakath12 23.04.2014 / 04:33

4 respostas

2

Você pode fazer isso:

xdg-open ~/Pictures/Wallpapers/test\ x/armored.jpg

cd significa alterar o diretório, portanto, essencialmente terminal está esperando um caminho para o diretório para o qual você deseja mudar.

xdg-open abre um arquivo em aplicativos padrão, mas ao abrir um arquivo que espera caminho para o arquivo, você também pode usar xdg-open para abrir o diretório no nautilus (se for o gerenciador de arquivos padrão) na GUI.

    
por Back.Slash 23.04.2014 / 04:35
1

Você deve estar executando o comando e passando o caminho para o arquivo como um argumento. Seus comandos funcionariam se você reorganizasse da seguinte forma:

xdg-open ~/Pictures/Wallpapers/test\ x/armored.jpg

A primeira palavra que você usa no terminal é o comando que você está tentando executar (que pode ser um programa, built-in, função, etc) e todas as outras palavras são passadas para esse programa como argumentos. Neste caso, você está dizendo xdg-open para exibir seu JPG, então você colocará o comando primeiro e depois o caminho para a foto.

    
por jkt123 23.04.2014 / 04:35
1

Você pode usar o duplo comercial. Como:

cd ~/Pictures/Wallpapers/test\ x/ && xdg-open armored.jpg

Isso executará o primeiro comando e passará para o segundo se o primeiro for bem-sucedido.

ou você pode fazer:

cd ~/Pictures/Wallpapers/test\ x/; xdg-open armored.jpg

Que executará o primeiro comando e o segundo, se o primeiro falhar ou não.

    
por jmunsch 23.04.2014 / 06:18
0
cd ~/Pictures/Wallpapers/test\ x/ xdg-open armored.jpg

Se você executar este comando, o terminal considerará o todo após cd como um diretório e será quebrado se contiver espaços e descartar a parte após o espaço. Nesse caso, o comando acima o levará apenas para o diretório% código%. Se você realmente deseja abrir o arquivo usando o xdg-open, seu comando precisa ser quebrado, como abaixo.

cd ~/Pictures/Wallpapers/test\ x/; xdg-open armored.jpg

O terminal analisa o segundo comando (ou seja, depois de;) se o primeiro comando foi bem-sucedido ou não.

Exemplo:

$ cd ~/Pictures/Wallpapers/test\ x/; xdg-open armored.jpg
bash: cd: /home/avinash/Pictures/Wallpapers/test x/: No such file or directory
gvfs-open: armored.jpg: error opening location: Error when getting information for file '/home/avinash/armored.jpg': No such file or directory

ou

cd ~/Pictures/Wallpapers/test\ x/ && xdg-open armored.jpg

O terminal analisa o segundo comando apenas se o primeiro comando tiver terminado com sucesso.

Exemplo:

$ cd ~/Pictures/Wallpapers/test\ x/ && xdg-open armored.jpg
bash: cd: /home/avinash/Pictures/Wallpapers/test x/: No such file or directory
    
por Avinash Raj 23.04.2014 / 06:29