Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/liujianping/job
JOB, make your short-term command as a long-term job. 将命令行规划成任务的工具
https://github.com/liujianping/job
bench concurrency crontab job repeat report retry
Last synced: 14 days ago
JSON representation
JOB, make your short-term command as a long-term job. 将命令行规划成任务的工具
- Host: GitHub
- URL: https://github.com/liujianping/job
- Owner: liujianping
- Created: 2019-04-09T11:14:51.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-06-30T10:17:38.000Z (over 4 years ago)
- Last Synced: 2024-07-31T20:43:07.973Z (3 months ago)
- Topics: bench, concurrency, crontab, job, repeat, report, retry
- Language: Shell
- Homepage:
- Size: 1.89 MB
- Stars: 145
- Watchers: 2
- Forks: 12
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-go - job - JOB, make your short-term command as a long-term job. (Command Line / Standard CLI)
- fucking-awesome-go - job - JOB, make your short-term command as a long-term job. (Command Line / Standard CLI)
- awesome-go - job - JOB, make your short-term command as a long-term job. (Command Line / Standard CLI)
- awesome-go - job - JOB, make your short-term command as a long-term job. (Command Line / Standard CLI)
- awesome-go-with-stars - job - JOB, make your short-term command as a long-term job. (Command Line / Standard CLI)
- awesome-go-extra - job - term command as a long-term job. 将命令行规划成任务的工具|118|10|1|2019-04-09T11:14:51Z|2020-06-30T10:17:38Z| (Build Automation / Standard CLI)
- awesome-go-plus - job - JOB, make your short-term command as a long-term job. (Command Line / Standard CLI)
- awesome-go-plus - job - JOB, make your short-term command as a long-term job. ![stars](https://img.shields.io/badge/stars-145-blue) ![forks](https://img.shields.io/badge/forks-12-blue) (Command Line / Standard CLI)
README
job
===
[![GoDoc](https://godoc.org/github.com/liujianping/job?status.svg)](https://godoc.org/github.com/liujianping/job) [![Go Report Card](https://goreportcard.com/badge/github.com/liujianping/job)](https://goreportcard.com/report/github.com/liujianping/job) [![Build Status](https://travis-ci.org/liujianping/job.svg?branch=master)](https://travis-ci.org/liujianping/job) [![Version](https://img.shields.io/github/tag/liujianping/job.svg)](https://github.com/liujianping/job/releases) [![Coverage Status](https://coveralls.io/repos/github/liujianping/job/badge.svg?branch=master)](https://coveralls.io/github/liujianping/job?branch=master)make your short-term command as a long-term job
## Install
Shell Install (Linux & MacOS)
````bash
# binary will be $(go env GOPATH)/bin/job
$: curl -sfL https://raw.githubusercontent.com/liujianping/job/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/job/master/install.sh | sh -s
````Brew install
````bash
$: brew tap liujianping/tap && brew install job
````OR
````bash
$: git clone https://github.com/liujianping/job.git
$: cd job
$: go build -mod vendor
````## Usage
````bash
$: job -h
Job, make your short-term command as a long-term jobUsage:
job [flags] [command args ...]Examples:
(simple) $: job echo hello
(schedule) $: job -s "* * * * *" -- echo hello
(retry) $: job -r 3 -- echox hello
(repeat) $: job -n 10 -i 100ms -- echo hello
(concurrent) $: job -c 10 -n 10 -- echo hello
(timeout cmd) $: job -t 500ms -- sleep 1
(timeout job) $: job -T 3s -r 4 -- sleep 1Flags:
-t, --cmd-timeout duration job command timeout duration
-c, --concurrent int job concurrent numbers
-h, --help help for job
-T, --job-timeout duration job timeout duration
-i, --repeat-interval duration job repeat interval duration
-n, --repeat-times int job repeat times, 0 means forever (default 1)
-r, --retry int job command retry times when failed
-s, --schedule string job schedule in crontab format
--version version for job
````