From 0fe826a9a04ddfc1a03b4583cec0fecaa389c5ce Mon Sep 17 00:00:00 2001 From: Baptiste Wicht Date: Tue, 25 Feb 2014 21:03:31 +0100 Subject: [PATCH] Create rm command --- .gitignore | 3 ++- programs/Makefile | 2 +- programs/mkdir/mkdir | Bin 73848 -> 0 bytes programs/rm/Makefile | 15 +++++++++++++++ programs/rm/src/main.cpp | 35 +++++++++++++++++++++++++++++++++++ 5 files changed, 53 insertions(+), 2 deletions(-) delete mode 100755 programs/mkdir/mkdir create mode 100644 programs/rm/Makefile create mode 100644 programs/rm/src/main.cpp diff --git a/.gitignore b/.gitignore index 62a2664e..208e952a 100644 --- a/.gitignore +++ b/.gitignore @@ -27,5 +27,6 @@ programs/pwd/pwd programs/which/which programs/readelf/readelf programs/touch/touch -programs/cd/cd +programs/mkdir/mkdir +programs/rm/rm programs/dist/ \ No newline at end of file diff --git a/programs/Makefile b/programs/Makefile index 43d514de..2741b29c 100644 --- a/programs/Makefile +++ b/programs/Makefile @@ -1,6 +1,6 @@ .PHONY: dist default clean force_look -PROGRAMS=one hello long loop longone longtwo keyboard tsh cpuid shutdown reboot args stat cat which readelf touch mkdir +PROGRAMS=one hello long loop longone longtwo keyboard tsh cpuid shutdown reboot args stat cat which readelf touch mkdir rm default: dist diff --git a/programs/mkdir/mkdir b/programs/mkdir/mkdir deleted file mode 100755 index 45718509da3fe51658b06bbd6e6a32b7ca476802..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 73848 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 bP`Ts!RwpDAYa?FUG6& +#include +#include +#include +#include + +int main(int argc, char* argv[]){ + if(argc == 1){ + print_line("Usage: rm file_path"); + exit(1); + } + + auto fd = open(argv[1]); + + if(fd.valid()){ + auto result = rm(argv[1]); + + if(result < 0){ + printf("rm: error: %s\n", std::error_message(-result)); + } + + close(*fd); + } else { + printf("rm: error: %s\n", std::error_message(fd.error())); + } + + exit(0); +} \ No newline at end of file