{ "info": { "author": "John Trengrove", "author_email": "john@retrofilter.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: System :: Logging" ], "description": "======\nrecent\n======\n\nRecent is a more structured way to log your bash history.\n\nThe standard ~/.bash_history file is inadequate in many ways, its\nworst fault is to by default log only 500 history entries, with no timestamp.\nYou can alter your bash HISTFILESIZE and HISTTIMEFORMAT variables but it\nis still a unstructured format with limited querying ability.\n\nRecent does the following:\n\n1. Logs current localtime, command text, current pid, command return value,\n working directory to an sqlite database in ``~/.recent.db``.\n\n2. Logs history immediately, rather than at the close of the session.\n\n3. Provides a command called recent for searching logs.\n\ninstallation instructions\n-------------------------\n\nYou need will need sqlite installed.\n\nInstall the recent pip package:\n\n``pip install recent``\n\nAdd the following to your .bashrc or .bash_profile:\n\n``export PROMPT_COMMAND='log-recent -r $? -c \"$(HISTTIMEFORMAT= history 1)\" -p $$'``\n\nAnd start a new shell.\n\nusage\n-----\n\nLook at your current history using recent:\n\n``recent``\n\nSearch for a pattern as follows:\n\n``recent git``\n\nFor more information see the help:\n\n``recent -h``\n\nNot currently recent doesn't integrate with bash commands such as\nCtrl-R, but this is in the pipeline.\n\nYou can directly query your history using the following:\n\n``sqlite3 ~/.recent.db \"select * from commands limit 10\"``\n\ndev installation instructions\n-----------------------------\n\n``git clone https://github.com/trengrj/recent && cd recent``\n\n``pip install -e .``\n\nsecurity\n--------\n\nPlease note, recent does not take into account enforcing logging\nfor security purposes. For this functionality on linux, have a\nlook at auditd http://people.redhat.com/sgrubb/audit/.\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/trengrj/recent", "keywords": "logging bash history database", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "recent", "package_url": "https://pypi.org/project/recent/", "platform": "", "project_url": "https://pypi.org/project/recent/", "project_urls": { "Homepage": "https://github.com/trengrj/recent" }, "release_url": "https://pypi.org/project/recent/0.1.3/", "requires_dist": null, "requires_python": "", "summary": "log bash history to an sqlite database", "version": "0.1.3" }, "last_serial": 2996882, "releases": { "0.0.3": [ { "comment_text": "", "digests": { "md5": "0743ef25932e45d56f9d3c7d501ab5b9", "sha256": "d6f8f56070b7800d5c0623261572bf96058788203ee5e22eb0698b182e1cfd2d" }, "downloads": -1, "filename": "recent-0.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0743ef25932e45d56f9d3c7d501ab5b9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5149, "upload_time": "2016-09-23T14:31:16", "url": "https://files.pythonhosted.org/packages/6d/7e/c38d81909f88acc6081dae6e3bee3cca4b59b5b86f8b243cc74016f76b6c/recent-0.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e612b8a9222324a16bbe666bbf8ff9b0", "sha256": "69448ff0a507f9f90c08cab2cb92b37e2e4a52b6e71f1f5d685cbeb27e3efc00" }, "downloads": -1, "filename": "recent-0.0.3.tar.gz", "has_sig": false, "md5_digest": "e612b8a9222324a16bbe666bbf8ff9b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3347, "upload_time": "2016-09-23T14:31:18", "url": "https://files.pythonhosted.org/packages/9d/92/8169a7072475773ceb0caca57475f0b140ab4a4b68f264868a7030348144/recent-0.0.3.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "ee5826b8847a16590cb1e9deb1daac3b", "sha256": "f13a000de167b9689f229a4127bebd054d7f63b44f668a283ef2cca9507164a6" }, "downloads": -1, "filename": "recent-0.1.1.tar.gz", "has_sig": false, "md5_digest": "ee5826b8847a16590cb1e9deb1daac3b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4670, "upload_time": "2016-10-29T08:28:26", "url": "https://files.pythonhosted.org/packages/4e/53/f381a3d48a35e459994474586c68b6c997d598deb070c17a4921603573ff/recent-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "4c81b65c9c997c29e6babc3a19155ec8", "sha256": "a8367626de704df5a1218d37512db69f2cc7fb0b4c269b3eb3f8eeed21f105a0" }, "downloads": -1, "filename": "recent-0.1.2.tar.gz", "has_sig": false, "md5_digest": "4c81b65c9c997c29e6babc3a19155ec8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4665, "upload_time": "2016-10-29T09:19:19", "url": "https://files.pythonhosted.org/packages/5a/39/cc9569f4b9dd7d5a4814acada31b6b7befd3eaaf83a649b0a9c839a83726/recent-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "31a2e34f8c26d44cf3af691764579d02", "sha256": "645739745f32386845079021a275ac40eb566d390953a6bb01341f733ae49526" }, "downloads": -1, "filename": "recent-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "31a2e34f8c26d44cf3af691764579d02", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6637, "upload_time": "2017-07-03T14:18:40", "url": "https://files.pythonhosted.org/packages/cd/22/95ca7c413e6ba891d9099b92d9f468c99c9824fb88daa745c5159004ce22/recent-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2785a74857be1d0c532dda1794fe6a5e", "sha256": "a16d408258301c935d6e2f2963e022aa3a5db6d53bbc59e482be2dce93ba6d09" }, "downloads": -1, "filename": "recent-0.1.3.tar.gz", "has_sig": false, "md5_digest": "2785a74857be1d0c532dda1794fe6a5e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4694, "upload_time": "2017-07-03T14:18:42", "url": "https://files.pythonhosted.org/packages/f3/0e/7062d210934f6374c6cb487e4cf94669ae92e881d1c15437b52a2ad62bc2/recent-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "31a2e34f8c26d44cf3af691764579d02", "sha256": "645739745f32386845079021a275ac40eb566d390953a6bb01341f733ae49526" }, "downloads": -1, "filename": "recent-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "31a2e34f8c26d44cf3af691764579d02", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6637, "upload_time": "2017-07-03T14:18:40", "url": "https://files.pythonhosted.org/packages/cd/22/95ca7c413e6ba891d9099b92d9f468c99c9824fb88daa745c5159004ce22/recent-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2785a74857be1d0c532dda1794fe6a5e", "sha256": "a16d408258301c935d6e2f2963e022aa3a5db6d53bbc59e482be2dce93ba6d09" }, "downloads": -1, "filename": "recent-0.1.3.tar.gz", "has_sig": false, "md5_digest": "2785a74857be1d0c532dda1794fe6a5e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4694, "upload_time": "2017-07-03T14:18:42", "url": "https://files.pythonhosted.org/packages/f3/0e/7062d210934f6374c6cb487e4cf94669ae92e881d1c15437b52a2ad62bc2/recent-0.1.3.tar.gz" } ] }