nbcommands bring the goodness of Unix commands to Jupyter notebooks.
You can simply use pip to install nbcommands:
$ pip install nbcommands
or conda:
$ conda install -c conda-forge nbcommands
nbcommands installs the following commands which let you interact with your Jupyter notebooks without spinning up a notebook server.
-
nbtouch: Update the access and modification times of each Jupyter notebook to the current time.$ nbtouch notebook1.ipynb notebook2.ipynb
-
nbgrep: Search for a pattern in Jupyter notebooks.$ nbgrep "os" notebook1.ipynb notebook2.ipynb $ nbgrep "os" directory/
-
nbhead: Print the first 5 cells of a Jupyter notebook to standard output.$ nbhead notebook1.ipynb
Note: You can also specify the number of cells you want to print using the
-noption.$ nbhead -n 10 notebook1.ipynb
-
nbtail: Print the last 5 cells of a Jupyter notebook to standard output.$ nbtail notebook2.ipynb
Note: You can also specify the number of cells you want to print using the
-noption.$ nbtail -n 10 notebook2.ipynb
-
nbcat: Concatenate Jupyter notebooks to standard output.$ nbcat notebook1.ipynb notebook2.ipynb
Note: You can create a new notebook by concatenating multiple notebooks using the
-ooption.$ nbcat notebook1.ipynb notebook2.ipynb -o notebook3.ipynb
-
nbless: Print a Jupyter notebook using a pager program.$ nbless notebook1.ipynb
And some non-Unix goodness,
Planned enhancements:
nbstrip: Strip outputs from Jupyter notebooks.nbdiff: Find the diff between two Jupyter notebooks.nbecho: Add a code cell to a Jupyter notebook.nbedit: Interactively edit a Jupyter notebook.nbtime: Run and time a Jupyter notebook.nbwc: Print word count for a Jupyter notebook.
nbcommands uses Semantic Versioning. For the available versions, see the tags on this repository.
This project is licensed under the Apache License, see the LICENSE file for details.







