可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened,
visit the help center for guidance.
Closed 8 years ago.
I'm looking for something that runs in a terminal and allows me to track time. I'd like it to be open source but that isn't necessary.
Most time tracking apps I've found are either web or gui based and there for take longer to enter data then I'd like.
回答1:
TimeTrap. It's simple and lightweight, and somewhat intuitive to use.
$ t switch World Domination Plan
$ t in --at "5 minutes ago" Research Volcano Islands
$ t out
$ t display
Timesheet World Domination Plan:
Day Start End Duration Notes
Mar 14, 2009 19:53:30 - 20:06:15 0:12:45 Research Volcano Islands
Total 0:12:45
It's written in ruby an available as a gem on gemcutter or on github:
http://github.com/samg/timetrap
A similar tool written in python is called TimeBook and available on bitbucket.
回答2:
a real basic one would be
$ echo `date`": what I'm doing now" >> timelog.txt
If you want to process it later, it's easier if you make that date +%s
or date +%F%T
.
You could wrap that as a shell script:
#!/usr/bin/bash -
echo `date +%s` $* >> ~/timelog.txt
Some hint of what you really want to do might help.
回答3:
I recently discovered TaskWarrior, which is purely CLI but quite feature-rich.
EDIT June 2015: Since I wrote this answer years ago, taskwarrior has developed in an awesome project with lots of features and integrations. Among my favourite there are:
- https://inthe.am/about (web interface)
- http://mirakel.azapps.de/index.html (android app)
More taskwarrior tools here.
回答4:
Emacs org-mode!
- (Video) Emacs Org-mode - a system for note-taking and project planning
- Emacs and Org-mode to implement GTD
- Time Clocking
回答5:
You could use wtime:
wtime [ -t task ] [ <action> ]
-t task
Specify the name of the task. It has to be a valid file-
name. Only the first 32 characters are taken into account.
The default value is "default".
action is one of the following:
-h Display help.
-a Start counting.
-s Stop counting.
-c Display current elapsed time in seconds.
-r [ start [ end ]]
Display time spent on the task during the specified
period. The parametres start and end represent the
begginning and end of the reporting period respec-
tively. The format of start and end is '%d-%m-%Y'
(see strptime (1)). The default values are the cur-
rent time for end and the begginning of the current
month for the start parameter.
回答6:
If you use todo.txt-cli, you should consider using punch time tracking, written in Python.
回答7:
Depends on the information you want to time track. In one company we had just to track our total working times a day (tax/social insurance purpose). The easieast solution was:
last
. More granular you could just do something like
echo -e -n `date`\tProjectName\tTask\tComment >> MyTimeTable.txt
...whatever...
echo -e \t`date` >> MyTimeTable.txt
and procsessing with the usual suspects (grep, awk, ...).
When you need even more functionality, I dont know anyone which works without a gui.
回答8:
App::TimeTracker - the easily extendable command line based time tracker
~$ cd work/some_project
~/work/some_project$ tracker start
Started working on some_project at 13:06:20
~/work/some_project$ # hack ... hack ... hack
~/work/some_project$ tracker stop
Worked 00:15:42 on some_project
~/work/some_project$ cd ../other_project
~/work/other_project$ tracker start
Started working on other_project at 13:32:54
~/work/other_project$ # hack some more
~/work/other_project$ tracker current
Working 00:35:31 on other_project
Started at 13:32:54
~/work/other_project$ tracker start --tag testing
Worked 00:38:23 on other_project
Started working on other_project (testing) at 14:11:27
~/work/other_project$ # hack, then go for lunch
~/work/other_project$ # ups, forgot to hit stop when I left
~/work/other_project$ tracker stop --at 14:30
Worked 00:18:33 on other_project (testing)
~/work/other_project$ tracker report --this day
work 01:12:38
some_project 00:15:42
other_project 00:56:56
total 01:12:38
Further details on the authors site: http://timetracker.plix.at/
回答9:
I recently started using Worklog, it seems pretty simple and straight forward.
http://ajy.co/2010/worklog-a-simple-time-tracking-program/