https://github.com/fredlackey/file-date-organizer
Move files into a folder structure organized by date.
https://github.com/fredlackey/file-date-organizer
cli datetime files organizer
Last synced: 2 months ago
JSON representation
Move files into a folder structure organized by date.
- Host: GitHub
- URL: https://github.com/fredlackey/file-date-organizer
- Owner: FredLackey
- License: apache-2.0
- Created: 2020-05-28T14:22:34.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2020-06-04T23:33:55.000Z (almost 5 years ago)
- Last Synced: 2025-02-24T21:17:55.062Z (3 months ago)
- Topics: cli, datetime, files, organizer
- Language: JavaScript
- Homepage: http://fredlackey.com
- Size: 611 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README-ALT.md
- License: LICENSE
Awesome Lists containing this project
README
# File Date Organizer for NodeJS
> The following document applies to the programaticc usage of `file-date-organizer`. For use from the command line, please see the [main README located here](README.md).
## Purpose
Locate files by date and move them into a date-based folder structure (ie `.../YYYY/MM/dd/hh`, etc.). Dates are extracted from the file name (ie `Screen Shot 2020-05-28 at 10.16.59 AM.png`) or the file properties (created date, modified date, etc.).> More info on _why_ I created this is on my blog: [https://fredlackey.com](https://www.fredlackey.com)
## Installation
```
npm i file-date-organizer
```## Usage
```
const flr = require('file-date-organizer');const results = flr.process({
source : '/Users/flackey/Documents/Screenshots',
target : '/Volumes/MPHD01/Screenshots',
useName : true,
recursive : true,
overwrite : true
});
```### Options
| Name | Description | Type | Default |
|---------------|------------------------------------------|-----------------|---------|
| `source` | Source Directory | `string (path)` | |
| `target` | Desination Directory | `string (path)` | |
| `recursive` | Locate files recursively | `boolean` | `true` |
| `overwrite` | Overwrite existing target files | `boolean` | `false` |
| `ignore` | Ignore existing target files | `boolean` | `false` |
| `copy` | Copy the files | `boolean` | `false` |
| `move` | Move the files | `boolean` | `false` |
| `useName` | Extract date from file name | `boolean` | `false` |
| `useCreated` | Use created date for target folder name | `boolean` | `false` |
| `useModified` | Use modified date for target folder name | `boolean` | `false` |
| `addType` | Target folder name includes file type | `boolean` | `false` |
| `addYear` | Target folder name includes file year | `boolean` | `true` |
| `addMonth` | Target folder name includes file month | `boolean` | `true` |
| `addDay` | Target folder name includes file day | `boolean` | `true` |
| `addHour` | Target folder name includes file hour | `boolean` | `false` |
| `addMinute` | Target folder name includes file minute | `boolean` | `false` |
| `addSecond` | Target folder name includes file second | `boolean` | `false` |
| `console` | Log activity to console | `boolean` | `false` |
| `limit` | Number of files to process | `number` | |
| `allowFuture` | Allow file names with date in future | `boolean` | `false` |### Contact
Please feel free to contact me directly with any questions, comments, or enhancement requests:**Fred Lackey**
**[[email protected]](mailto://[email protected])**
**[http://fredlackey.com](http://www.fredlackey.com)**