Cd (comando): diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
m Foram revertidas as edições de 189.47.234.82 por adicionar informações erradas (usando Huggle) (3.4.6)
Etiquetas: Huggle Reversão
m Pequenos ajustes
Linha 2:
'''<code>cd</code>''', também conhecido por '''<code>chdir</code>''', é um [[Comando_(informática)|comando]] implementado em [[Interpretador_de_comandos|interfaces de linha de comandos]] de diversos [[Sistema_operacional|sistemas operacionais]] ([[Unix]] ou qualquer um do [[Sistema_operacional_tipo_Unix|tipo Unix]], [[DOS]], [[Microsoft Windows|Windows]], [[OS/2]] e [[AmigaOS]]). Seu nome é um [[acrônimo]] da expressão [[Língua inglesa|inglesa]] '''change directory''' ("mudar [[Diretório_(informática)|diretório]]") e sua finalidade é, como sugere seu nome, mudar o diretório atual de trabalho (isto é, o diretório em que se está) para uma outra especificada.
 
No Unix e nos sistemas operacionais do tipo Unix, '''<code>chdir(2)</code>''' é a [[chamada de sistema]] responsável por mudar o diretório atual de trabalho,<ref>[http://www.opengroup.org/onlinepubs/009695399/functions/chdir.html The Open Group Base Specifications Issue 6 and IEEE Std 1003.1, 2004 Edition] {{en}}</ref>, como definido pelo padrão [[POSIX]].
 
== Uso ==
 
Um usuário pode estar trabalhando no seu diretório "home" e este possuir os sub-diretórios "games" e "fotos". Eis um exemplo de mudança de diretórios através do comando cd:
 
Linha 25 ⟶ 24:
Enquanto nos sistemas Unix é usada a função <code>chdir()</code>, escrita em [[C_(linguagem_de_programação)|C]] e especificada pelo padrão POSIX, no Windows a interface de linha de comandos utiliza a [[Windows_API|WinAPI]] para mudar o diretório atual de trabalho. Isto significa que quando o comando é executado, nenhum novo processo é criado para alternar para o diretório especificado, que é o caso de outros comandos tais como o <code>[[ls]]</code> por exemplo. Em vez disso, a própria interface de linha de comandos executa o comando. Isto porque, quando um novo processo é criado, o processo-filho herda o diretório no qual o processo-pai foi criado. E, uma vez que o comando <code>cd</code> herdasse o diretório do processo-pai, seu objetivo jamais seria alcançado.
 
Ao contrário do que faz a WinAPI ou a função C no POSIX, nem a [[Java_(linguagem_de_programação)|linguagem Java]] nem a [[Máquina Virtual Java]] oferecem suporte a <code>chdir</code> diretamente. Uma requisição de alteração permaneceu em aberto por mais de uma década enquanto a equipe responsável pelo Java considerava alternativas, contudo o pedido foi negado em 2008 e apenas um suporte limitado foi introduzido (afetando primeiramente <code>java.lang.Runtime</code> e posteriormente <code>java.lang.ProcessBuilder</code>).<ref>{{citar web| url=http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4045688 |titulo=Java - Bug ID: 4045688 |trabalho=Bug Database |data=1997-04-17 |publisherpublicado=[[Sun Microsystems]]|acessodata=20 de fevereiro de 2011|lingua=inglês}}</ref>
 
O Windows PowerShell, shell de linha de comandos [[Orientação_a_objetos|orientado-a-objetos]] e [[linguagem de script]], executa o comando <code>cd</code> (''cmdlet'') dentro do processo do shell. Na verdade, tendo em vista que o PowerShell é baseado na plataforma [[Microsoft .NET]] e que possui uma arquitetura diferente de shells anteriores, todos os ''cmdlets'' tais como [[ls]], [[rm_(Unix)|rm]] etc. correm no processo do shell.
Linha 33 ⟶ 32:
 
== Referências ==
{{Reflist}}
<references/>
 
== Ligações externas ==
* [{{Link|en|2=http://man7.org/linux/man-pages/man2/chdir.2.html |3=Linux Programmer's Manual: CHDIR(2)] {{en}}
 
{{Comandos Unix}}
{{Comandos do Windows}}
 
{{Portal3|Administração}}
 
[[Categoria:Programas padrões do Unix]]