archivebox_help.py 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #!/usr/bin/env python3
  2. __package__ = 'archivebox.cli'
  3. __command__ = 'archivebox help'
  4. __description__ = 'Print the ArchiveBox help message and usage'
  5. import sys
  6. import argparse
  7. from ..legacy.util import reject_stdin
  8. from . import list_subcommands
  9. def main(args=None):
  10. args = sys.argv[1:] if args is None else args
  11. parser = argparse.ArgumentParser(
  12. prog=__command__,
  13. description=__description__,
  14. add_help=True,
  15. )
  16. parser.parse_args(args)
  17. reject_stdin(__command__)
  18. COMMANDS_HELP_TEXT = '\n '.join(
  19. f'{cmd.ljust(20)} {summary}'
  20. for cmd, summary in list_subcommands().items()
  21. )
  22. print(f'''ArchiveBox: The self-hosted internet archive.
  23. Usage:
  24. archivebox [command] [--help] [--version] [...args]
  25. Comamnds:
  26. {COMMANDS_HELP_TEXT}
  27. Example Use:
  28. mkdir my-archive; cd my-archive/
  29. archivebox init
  30. archivebox add https://example.com/some/page
  31. archivebox add --depth=1 ~/Downloads/bookmarks_export.html
  32. archivebox subscribe https://example.com/some/feed.rss
  33. archivebox update --resume=15109948213.123
  34. archivebox list --sort=timestamp --csv=timestamp,url,is_archived
  35. Documentation:
  36. https://github.com/pirate/ArchiveBox/wiki
  37. ''')
  38. if __name__ == '__main__':
  39. main()