Linux x86_64Sistema de arquivos#80
chdir
Altera o diretório de trabalho atual do processo, por caminho.
Descrição
O diretório de trabalho é compartilhado por todas as threads de um processo — não é possível ter diretórios de trabalho diferentes por thread usando apenas esta chamada (para isso, veja `unshare(CLONE_FS)`).
Header:
unistd.hman 2Assinatura
int chdir(const char * path);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| path | const char * | Caminho do novo diretório de trabalho. |
Registradores (x86_64)
| Registrador | Papel | Argumento |
|---|---|---|
| rax | número da syscall (chamada) / valor de retorno (após SYSCALL) | — |
| rdi | argumento 1 | pathconst char * |
Valor de retorno
0 em sucesso; -1 em erro, com errno definido.
Códigos de erro (errno)
- EACCES(13)
- Permissão negada.
- ENOENT(2)
- Arquivo ou diretório inexistente.
- ENOTDIR(20)
- Não é um diretório.