Skip to main content
dts: Generate sequence of datetimes, like seq
=============================================

## Sequece of dates

`dts` generate sequence of datetimes.

```
$ dts 20180401 20180403
20180401
20180402
20180403
```

If you do it using `seq`, it will like below.

```bash
$ seq 1 3
1
2
3
$ seq -f '%02g' 1 3 | xargs -I {} echo "201804{}"
20180401
20180402
20180403
```

## Install

```bash
pip install dts
```


## How to use: Simple

```bash
$ dts -h
usage: dts [-h] [-i INTERVAL] [-f FORMAT] FIRST LAST

dts is a seq util for datetimes

Examples:

$ dts 20180501 20180503
20180501
20180502
20180503

$ dts 20180501-0900 20180501-1200 -i h1 -f '%Y-%m-%dT%H:%M:%S'
2018-05-01T09:00:00
2018-05-01T10:00:00
2018-05-01T11:00:00
2018-05-01T12:00:00

Github: https://github.com/KwangYeol/dts

positional arguments:
FIRST first date of the seq. For example, 2018-05-01, 20180501, 20180501-0900, 2018-05-01T09:00
LAST last date of the seq. See also, FIRST

optional arguments:
-h, --help show this help message and exit
-i INTERVAL, --interval INTERVAL
interval: h1, d1, w1. default value is d1
-f FORMAT, --format FORMAT
see also, datetime.strftime
```

* `-i`: It has two parts. (time unit) + (interval).
- time unit: `h` menas hours, `d` means days, and `w` menas weeks
- interval: numbers
- `h1` means 1-hour interval, `d3` means 3-day interval, etc.
- default value is `d1`

* `-f`: It has datetime format. See this (https://docs.python.org/2/library/datetime.html#strftime-strptime-behavior)


## How to use: with Pipeline

```bash
$ dts 20180401 20180430 -i d7
20180401
20180408
20180415
20180422
20180429

$ dts 20180510-0900 20180510-1400 -i h1 -f '%Y%m%d-%H00'
20180510-0900
20180510-1000
20180510-1100
20180510-1200
20180510-1300
20180510-1400

$ dts 20180510-0900 20180510-1400 -i h1 -f '%Y-%m-%dT%H:00'
2018-05-10T09:00
2018-05-10T10:00
2018-05-10T11:00
2018-05-10T12:00
2018-05-10T13:00
2018-05-10T14:00
```


### How to use

For examle, you have hive table named `credit` which has daily partition `yyyymmdd` like below.

```bash
hadoop fs -ls /hive/warehouse/sales.db/credit/yyyymmdd=20180401
```

You can find the data size in some range with `dts`.

```bash
$ dts 20180401 20180410 | xargs -I {} hadoop fs -ls /hive/warehouse/sales.db/credit/yyyymmdd={}
```


## Development

python setup.py install
python setup.py sdist
python setup.py sdist bdist bdist_wheel

Release files for dts 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dts 0.1.3
File Size Uploaded
dts-0.1.3.tar.gz 5.9 kB Details

Release files / dts-0.1.3.tar.gz

Download URL dts-0.1.3.tar.gz
Size 5.9 kB
Tags Source
SHA-256 checksum
How to use checksums
51968dc946d2e60241faca615c14dccb550d2e23e44ed0496293254597e0b778
BLAKE2b-256 checksum
How to use checksums
933ebb28ee0dc1b1b713934d5bc2a3a858de930277ee0e1f631f38ee809e58b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.3 This release

1 release file

0.1.2

1 release file

0.1.1

3 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page