Home

[Resolvido!] Bash: cd: argumentos em excesso / Zsh: cd: string não encontrada em pwd:

Updated on terça-feira, 3 de dezembro de 2024

Written by

JoãoSilva

Approved by

Jessica Shee

Português English Français Deutsch やまと Español

Resumo: O erro cd: argumentos em excesso ocorre quando você executa o cd no shell de comando para entrar no diretório relativo em seus dispositivos. Este artigo da iBoysoft orienta você a resolver esse problema com soluções fáceis e eficazes.

Você deve estar intrigado com o código de erro "bash: cd: argumentos em excesso" ou "zsh: cd: argumentos em excesso" gerado no shell de comando ao digitar cd para entrar em um diretório desejado.

Não se preocupe, por favor. Este artigo vai explicar por que cd: argumentos em excesso ocorrem e como resolver zsh/bash cd: argumentos em excesso com 5 correções úteis.

Por que ocorre o erro Zsh/Bash: cd: argumentos em excesso?

Como de costume, o shell de comando deve abrir diretamente o diretório conforme você insere a linha de comando cd seguida do caminho do arquivo. Ele aceita um nome de diretório como argumento e substitui o diretório de trabalho do ambiente de shell atual pelo diretório fornecido.

Se nenhum argumento for dado, o comando cd se comporta como se o diretório nomeado na variável de ambiente HOME tivesse sido especificado como argumento. Mas quando você insere um diretório cujo nome contém espaços ou caracteres especiais no shell Unix, ele os identifica como mais de um argumento. Por isso que ele lança o código de erro cd: argumentos em excesso em seu shell de comando bash.

 Nota: Se você estiver executando o shell de comando zsh, você pode obter o erro "cd: string não encontrada em pwd:" ao tentar cd em um caminho que contenha espaços.

Algumas pessoas se perguntam se o Unix Shell pode ir para mais diretórios de uma vez, a resposta é absolutamente não. Se você deseja entrar em mais diretórios, você tem que executar o comando cd um por vez.

Se este post dissipar suas dúvidas sobre por que ocorrem argumentos em excesso, clique no botão Compartilhar abaixo para ajudar mais pessoas!

 

Como corrigir bash: cd: muitos argumentos e zsh: cd: string não está no pwd:

Como discutido acima, o Unix Shell reconhece que há mais de um argumento em seu diretório com caracteres especiais e espaços, então falha ao mudar para o diretório. Enfrentando tal caso, é recomendável continuar lendo, este artigo apresentará quatro soluções fáceis para fazer a função cd funcionar corretamente.

Solução 1: Coloque o nome do diretório entre aspas duplas

Uma solução fácil para fazer o comando cd mudar para o diretório especializado com sucesso é colocar o nome do diretório entre aspas duplas.

Passo 1: Abra o Terminal em seu computador.

Passo 2: Digite cd e depois digite o símbolo de aspas duplas.

Passo 3: Insira o caminho do arquivo contendo espaços ou caracteres especiais entre as aspas duplas.

cd "minha nova pasta"

Passo 4: Pressione a tecla Enter/Return para executar a linha de comando cd e então você verá que o diretório muda para o que você inseriu, onde você está autorizado a realizar quaisquer ações adicionais no novo diretório.

Além disso, você pode colocar um caminho inteiro para o diretório ou apenas envolver os componentes do caminho contendo espaços ou caracteres especiais entre as aspas duplas.

Solução 2: Use uma barra invertida para evitar espaços

Se houver espaços no diretório, a linha de comando cd no Unix Shell os dividirá em dois ou mais argumentos. Portanto, uma barra invertida vem aqui para escapar dos espaços, fazendo com que o shell de comando trate os espaços como um caractere de espaço literal, e não como um separador entre argumentos.

Passo 1: Execute o Terminal em sua máquina.

Passo 2: Digite cd e siga o diretório para o qual você planeja mudar.

Passo 3: Adicione barras invertidas nos espaços do nome do diretório. Por favor, note que uma barra inclinada para a frente funciona como um separador entre os componentes do caminho e a barra invertida funciona como um conjunto de ferramentas para escapar de espaços.

cd desktop/minha\ nova\ pasta

Passo 4: Pressione a tecla Return/Enter para fazer o cd te levar a um novo diretório.

Solução 3: Use a tecla Tab para auto-completar

Nos programas de linha de comando do Windows, Linux e macOS, você pode completar automaticamente os comandos fornecidos com a tecla Tab. Por exemplo, no prompt de comando Unix, isso pode ser uma boa maneira de mudar para um diretório diferente com mais rapidez.

Passo 1: Abra o shell de comando em seu dispositivo.

Passo 2: Comece a digitar o caminho para o qual pretende ir.

Passo 3: Pressione a tecla Tab em seu teclado para usar sua função de auto-completar de forma direta.

Se você tem várias pastas com nomes semelhantes, você precisa digitar os primeiros caracteres do nome para identificar aquela em que deseja entrar com o comando cd. Se a auto-completação não funcionar, isso indica que o caminho especificado não existe.

Solução 4: Abra seu terminal no diretório de destino

Como você pretende abrir o diretório no shell de comando para assuntos futuros, não fique preso apenas digitando cd. Abrir um terminal no diretório de destino também tem o mesmo efeito.

Se você estiver utilizando Linux, por favor, leia as instruções detalhadas abaixo:

Passo 1: Abra o diretório no explorador.

Passo 2: Clique com o botão direito e selecione Abrir no Terminal e então você poderá voltar ao shell de comando para prosseguir.

Se você estiver utilizando um dispositivo macOS, você pode seguir os passos descritos abaixo:

Passo 1: Abra uma janela do Finder e navegue até a pasta. Se não ver a barra de caminho na parte inferior da janela do Finder, escolha Visualizar -> Mostrar Barra de Caminho.

Passo 2: Clique com o botão direito no diretório da pasta que você deseja acessar e escolha Novo Terminal na Pasta.

Então você verá que o Terminal muda para o diretório com o qual está trabalhando.

Solução 5: Arraste a pasta para a janela do terminal

Se todas as soluções mencionadas acima não forem do seu agrado, a solução final que vale a pena tentar é simplesmente arrastar o diretório da pasta para a janela do seu terminal. Apenas abra o terminal, clique e arraste a pasta para a janela, então você estará no novo caminho do diretório.

Se você resolveu com sucesso o erro bash: cd: too many arguments/zsh: cd: string not in pwd, por que não compartilhar este artigo para ajudar mais pessoas?

 

Dica bônus: como fazer melhor uso do cd?

Se você é um iniciante no shell de comando ou tem grande paixão e curiosidade por terminais, várias linhas de comando cd discutidas neste artigo devem ser úteis. Dê uma olhada rápida aqui:

  • cd: cd sozinho ou cd ~ sempre colocará o usuário em seu diretório home.
  • cd .: cd . deixará o usuário no mesmo diretório em que ele está atualmente (ou seja, o diretório atual não mudará). Isso pode ser útil se o código interno do shell do usuário não conseguir lidar com o diretório em que ele se encontra sendo recriado. Executar cd . colocará o shell do usuário no diretório recriado.
  • cd ~nome-de-usuário: cd ~ nome-de-usuário colocará o usuário no diretório home do nome-de-usuário.
  • cd dir (sem uma /): cd dir colocará o usuário em um subdiretório; por exemplo, se eles estiverem em /usr, digitar cd bin os colocará em /usr/bin, enquanto cd /bin os coloca em /bin.
  • cd ..: cd.. moverá o usuário para cima um diretório. Portanto, se eles estiverem em /usr/bin/tmp, cd.. os moverá para /usr/bin, enquanto cd../../ os moverá para /usr (ou seja, para cima dois níveis). O usuário pode usar essa indireção para acessar subdiretórios também. Portanto, a partir de /usr/bin/tmp, eles podem usar cd../../local para ir para /usr/local.
  • cd -: cd - alternará o usuário para o diretório anterior. Por exemplo, se eles estiverem em /usr/bin/tmp e forem para /etc, eles podem digitar cd - para voltar para /usr/bin/tmp. O usuário pode usar isso para alternar entre dois diretórios sem pushd e popd.

Conclusão

O erro cd: too many arguments não é tão terrível quanto você imagina, já que este artigo oferece 5 soluções fáceis para fazê-lo desaparecer. Você pode tentar uma ou mais conforme desejar para entrar no diretório relativo usando cd. Além disso, você pode encontrar um contexto maravilhoso ensinando como usar melhor a linha de comando cd coberto neste artigo.