Skip to content
timestamp convert & compare tool. 时间戳转换与对比工具
Branch: master
Clone or download
Latest commit feb6115 Jul 2, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cmd fix lint warnings Jul 2, 2019
vendor 1. test coverage Jun 26, 2019
.gitignore 1. test coverage Jun 26, 2019
.goreleaser.yml add ci tools Jun 25, 2019
.travis.yml rm goreleaser ci Jun 26, 2019
LICENSE first commit Jun 25, 2019
README.md add Formats flag & update compare result Jun 26, 2019
go.mod add Formats flag & update compare result Jun 26, 2019
go.sum add Formats flag & update compare result Jun 26, 2019
install.sh 1. test coverage Jun 26, 2019
main.go 1. test coverage Jun 26, 2019

README.md

ts

timestamp convert & compare tool

GoDoc Go Report Card Build Status Version Coverage Status

Install

Shell Install support Linux & MacOS

# binary will be $(go env GOPATH)/bin/ts
$: curl -sfL https://raw.githubusercontent.com/liujianping/ts/master/install.sh | sh -s -- -b $(go env GOPATH)/bin

# In alpine linux (as it does not come with curl by default)
$: wget -O - -q https://raw.githubusercontent.com/liujianping/ts/master/install.sh | sh -s 

Brew Install only MacOS

$: brew tap liujianping/tap && brew install ts

Source Install

$: git clone git@github.com:liujianping/ts.git
$: cd ts
$: go install -mod vendor

Quick Start

$: ts -h
timestamp convert & compare tool

Usage:
  ts [flags]

Examples:

	(now timestamp)	$: ts
	(now add)		$: ts --add 1d
	(now sub)		$: ts --sub 1d
	(convert)		$: ts "2019/06/24 23:30:10"
	(pipe)			$: echo "2019/06/24 23:30:10" | ts
	(format)		$: ts -f "2019/06/25 23:30:10"
	(before)		$: ts -b "2019/06/25 23:30:10" ; echo $?
	(after)			$: ts -a "2019/06/25 23:30:10" ; echo $?
	(timezone)		$: ts -f "2019/06/25 23:30:10" -z "Asia/Shanghai"
	(Formats)		$: ts -F 
		ANSIC       = "Mon Jan _2 15:04:05 2006"
		UnixDate    = "Mon Jan _2 15:04:05 MST 2006"
		RubyDate    = "Mon Jan 02 15:04:05 -0700 2006"
		RFC822      = "02 Jan 06 15:04 MST"
		RFC822Z     = "02 Jan 06 15:04 -0700" RFC822 with numeric zone
		RFC850      = "Monday, 02-Jan-06 15:04:05 MST"
		RFC1123     = "Mon, 02 Jan 2006 15:04:05 MST"
		RFC1123Z    = "Mon, 02 Jan 2006 15:04:05 -0700" RFC1123 with numeric zone
		RFC3339     = "2006-01-02T15:04:05Z07:00"
		RFC3339Nano = "2006-01-02T15:04:05.999999999Z07:00"
		Kitchen     = "3:04PM"
		Stamp      = "Jan _2 15:04:05"
		StampMilli = "Jan _2 15:04:05.000"
		StampMicro = "Jan _2 15:04:05.000000"
		StampNano  = "Jan _2 15:04:05.000000000"
		TimestampSec	= "time.Unix()"
		TimestampMilli  = "time.UnixNano()/1000000"
		TimestampMicro  = "time.UnixNano()/1000"
		TimestampNano	= "time.UnixNano()"

Flags:
      --add duration      add duration
  -a, --after string      after compare
  -b, --before string     before compare
  -f, --format string     time format
  -h, --help              help for ts
      --sub duration      sub duration
  -z, --timezone string   time zone

support system format:

  • ANSIC = "Mon Jan _2 15:04:05 2006"
  • UnixDate = "Mon Jan _2 15:04:05 MST 2006"
  • RubyDate = "Mon Jan 02 15:04:05 -0700 2006"
  • RFC822 = "02 Jan 06 15:04 MST"
  • RFC822Z = "02 Jan 06 15:04 -0700" - RFC822 with numeric zone
  • RFC850 = "Monday, 02-Jan-06 15:04:05 MST"
  • RFC1123 = "Mon, 02 Jan 2006 15:04:05 MST"
  • RFC1123Z = "Mon, 02 Jan 2006 15:04:05 -0700" - RFC1123 with numeric zone
  • RFC3339 = "2006-01-02T15:04:05Z07:00"
  • RFC3339Nano = "2006-01-02T15:04:05.999999999Z07:00"
  • Kitchen = "3:04PM"
  • Stamp = "Jan _2 15:04:05"
  • StampMilli = "Jan _2 15:04:05.000"
  • StampMicro = "Jan _2 15:04:05.000000"
  • StampNano = "Jan _2 15:04:05.000000000"
You can’t perform that action at this time.