aboutsummaryrefslogtreecommitdiff
path: root/sh/commands.c
blob: bc2e910481b87ca7dccd5f765112de81ec526b34 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/* SPDX-License-Identifier: BSD-3-Clause */
/*
 * Copyright (C) 2022, 2023 Ferass El Hafidi <vitali64pmemail@protonmail.com>
 */
/* POSIX Header Files */
#include <unistd.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>

/* sh Header Files */
#include "commands.h"

int builtin_cd(int argc, char *argv[]);

/* *** COMMANDS *** */

/* cd - change directory */

int builtin_cd(int argc, char *argv[]) {
	if (argc > 1 && chdir(argv[1]) == -1 && errno) {
		printf("sh: cd: %s\n", strerror(errno));
		return errno;
	}
	return 0;
}