|
|
3 years ago | |
|---|---|---|
| .. | ||
| README.md | 3 years ago | |
| package-lock.json | 3 years ago | |
| package.json | 3 years ago | |
| step1.js | 3 years ago | |
README.md
Replicate ls
This starts you off with a simple command line parsing library and a globbing library to get going named fast-glob. "Globbing" is what you're doing when you use regular expression patterns to match files like this:
ls *.txt
The fast-glob library is a good library with only one quirk to watch out for: It will not convert \ (backslash) characters to / in your glob. That means if you use C:\Users\zed\*.txt it will fail. You'll have to convert all \ to / on Windows.
File Attributes
Part of the ls command is printing out the attributes of a file. For that you'll need fs.stat found in the fs module.
Removing fast-glob
If you can get your ls copy working with fast-glob then try removing fast-glob and replicate its functionality with your own code. You'll need the fs module and specifically the readdir function.
Learning Objectives
As with all of the exercises thus far you aren't just learning how to replicated ls but you'll also:
- Learn more about the
fsmodule. - Learn how to process command line options. Try commander.
- Learn how to list files recursively based on a pattern using
fast-globand howfast-globworks by replacing it. - Learn about file attributes with the
fs.statfunction.