diff --git a/Readme.md b/Readme.md index 611a505f49..1d0b8c462f 100644 --- a/Readme.md +++ b/Readme.md @@ -1,3 +1 @@ -# Node.js basics - -## !!! Please don't submit Pull Requests to this repository !!! +# Solution branch diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000000..34b7366dcf --- /dev/null +++ b/package-lock.json @@ -0,0 +1,17 @@ +{ + "name": "node-nodejs-basics", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "node-nodejs-basics", + "version": "1.0.0", + "license": "ISC", + "engines": { + "node": ">=24.10.0", + "npm": ">=10.9.2" + } + } + } +} diff --git a/src/cli/args.js b/src/cli/args.js index 9e3622f791..cac869c79e 100644 --- a/src/cli/args.js +++ b/src/cli/args.js @@ -1,5 +1,12 @@ const parseArgs = () => { - // Write your code here + let result = []; + + process.argv.forEach((arg, index, arr) => { + if(arg.includes('--')){ + result.push(`${arg} is ${arr[++index]}`) + } + }) + console.log(result.join(', ')) }; parseArgs(); diff --git a/src/cli/env.js b/src/cli/env.js index e3616dc8e7..5e6eff17a9 100644 --- a/src/cli/env.js +++ b/src/cli/env.js @@ -1,5 +1,13 @@ const parseEnv = () => { - // Write your code here + const result = Object.entries(process.env).reduce((acc, curr) => { + if (curr[0].includes("RSS_")){ + const envVal = `${curr[0]}=${curr[1]}`; + return [...acc, envVal]; + } + return acc; + }, []) + + console.log(result.join('; ')) }; parseEnv(); diff --git a/src/fs/copy.js b/src/fs/copy.js index e226075b4c..b5bf69b531 100644 --- a/src/fs/copy.js +++ b/src/fs/copy.js @@ -1,5 +1,5 @@ const copy = async () => { - // Write your code here + }; await copy(); diff --git a/src/fs/create.js b/src/fs/create.js index 6ede285599..3bb3193b7c 100644 --- a/src/fs/create.js +++ b/src/fs/create.js @@ -1,5 +1,20 @@ +import * as fs from "node:fs"; + const create = async () => { - // Write your code here + const content = 'I am fresh and young'; + + fs.readFile('./src/fs/files/fresh.txt', (err, data) => { + if (!err && data) { + throw new Error('FS operation failed') + } + }); + + fs.writeFile('./src/fs/files/fresh.txt', content, err => { + if(err){ + console.error(err) + throw new Error('FS operation failed') + } + }); }; await create(); diff --git a/src/fs/files/fresh.txt b/src/fs/files/fresh.txt new file mode 100644 index 0000000000..205d704cb7 --- /dev/null +++ b/src/fs/files/fresh.txt @@ -0,0 +1 @@ +I am fresh and young \ No newline at end of file