tablas - Cambiar el directorio de trabajo del cuaderno IPython/Jupyter
manual jupyter notebook (30)
Antes de ejecutar ipython:
- Cambie el directorio a su directorio preferido
- Ejecute ipython
Después de ejecutar ipython:
- Use
%cd /Enter/your/prefered/path/here/
- Use
%pwd
para verificar su directorio actual
Cuando abro un cuaderno Jupyter (anteriormente IPython), el valor predeterminado es C:/Users/USERNAME
.
¿Cómo puedo cambiar esto a otra ubicación?
Gracias.
Añadiré a la larga lista de respuestas aquí. Si está en Windows / usando Anaconda3, lo logré yendo al archivo /Scripts/ipython-script.py, y agregué las líneas
import os
os.chdir(<path to desired dir>)
antes de la línea
sys.exit(IPython.start_ipython())
Además del enfoque de @ Matt, una forma de cambiar el directorio predeterminado para usarlo en los portátiles es cambiar los archivos de configuración. Primero en el cmdline, escriba:
$> ipython profile create
para inicializar un perfil con el archivo de configuración predeterminado. En segundo lugar, en el archivo ipython_notebook_config.py
, descomente y edite esta línea:
# c.NotebookManager.notebook_dir = ''D://Documents//Desktop''
cambiando D://Documents//Desktop
a la ruta que desee.
Esto funciona para mí;)
ACTUALIZACIÓN: c.NotebookManager.notebook_dir
no hay c.NotebookManager.notebook_dir
. Ahora, la línea para descomentar y config es esta: c.NotebookApp.notebook_dir = ''Z://username_example/folder_that_you_whant''
Como MrFancypants mencionó en los comentarios, si está usando Jupyter (lo cual debería hacer, ya que actualmente reemplaza el anterior proyecto de Notebook de IPython), las cosas son un poco diferentes . Por un lado, ya no hay perfiles.
Después de instalar Jupyter , primero verifique su carpeta ~ / .jupyter para ver su contenido. Si no se migraron archivos de configuración desde el perfil predeterminado de IPython (ya que no estaban en mi caso), cree uno nuevo para Jupyter Notebook:
jupyter notebook --generate-config
Esto genera el archivo ~ / .jupyter / jupyter_notebook_config.py con algunas opciones posibles comentadas. Para establecer el directorio predeterminado, agregue:
c.NotebookApp.notebook_dir = u''/absolute/path/to/notebook/directory''
Al cambiar entre Linux y OS X, quería usar una ruta relativa a mi carpeta de inicio (ya que difieren - / Users / username y / home / username ), así que configuré algo como:
import os
c.NotebookApp.notebook_dir = os.path.expanduser(''~/Dropbox/dev/notebook'')
Ahora, cada vez que jupyter notebook
, abre la carpeta de mi cuaderno deseado. También versiono toda la carpeta ~ / .jupyter en mi repositorio de dotfiles que despliegue en cada nueva máquina de trabajo.
Como un aparte, aún puedes usar la opción de línea de comandos --notebook-dir
, así que tal vez un alias simple se adapte mejor a tus necesidades.
jupyter notebook --notebook-dir=/absolute/path/to/notebook/directory
Cuando se lanza desde la línea de comando, el Portátil IPython usará su directorio de trabajo actual. Aproveché esto y creé entradas del menú contextual para abrirlo directamente desde el Explorador de Windows. ¡No necesita atajos ni secuencias de comandos por lotes!
Me inspiré en las entradas basadas en el registro ''Git GUI Here / Git Bash Here'' creadas por Git para Windows. Esta página (vinculada a la versión archivada) fue útil para ubicar las claves correctas.
Este primer par es para el menú contextual presentado con nada seleccionado (por ejemplo, el fondo del directorio). El notebook se abrirá con el directorio actual ya que es el directorio de trabajo.
Key: HKCR/Directory/Background/shell/ipythonnb
Value: &IPython Notebook Here
Key: HKCR/Directory/Background/shell/ipythonnb/command
Value: "<full path to IPython notebook>" "%v"
Este par es para el menú contextual presentado al hacer clic en una carpeta. El notebook se abrirá con la carpeta seleccionada como su directorio de trabajo.
Key: HKCR/Directory/shell/ipythonnb
Value: &IPython Notebook Here
Key: HKCR/Directory/shell/ipythonnb/command
Value: "<full path to IPython notebook>" "%1"
Preste atención a %v
vs %1
argumentos o no funcionará. No olvide las citas tampoco. En mi plataforma, la ruta completa a IPython Notebook es C:/WinPython-32bit-2.7.6.4/IPython Notebook.exe
pero este valor dependerá obviamente de su instalación.
Editar: AFAICT se requiere la ruta completa incluso si el ejecutable está en la ruta del sistema.
De acuerdo con el documento oficial Jupyter Notebook Documentation Change
%PERFIL DEL USUARIO%
a la ruta de tu carpeta
En MiniConda2 / Anaconda2 en Windows para cambiar el directorio de trabajo de Jupyter o iPython, puede modificar este archivo:
C:/Program Files/Miniconda2/cwp.py
y agregue la ubicación de su carpeta de proyecto: carpeta_desarrollo = ''C: / Usuarios / NOMBRE DE USUARIO / Desarrollo'' que es Mi nombre de usuario / Desarrollo en mi caso.
también cambia: os.chdir (documents_folder) a os.chdir (development_folder)
try:
documents_folder = get_folder_path(FOLDERID.Documents)
development_folder= ''C:/Users/USERNAME/Development''
except PathNotFoundException:
documents_folder = get_folder_path(FOLDERID.PublicDocuments)
os.chdir(development_folder)
subprocess.call(args, env=env)
Ejecute usando sus accesos directos comunes de Jupiter Notebook.
En iPython Notebook en Windows, esto funcionó para mí:
cd d:/folder/
En la línea de comando antes de escribir " jupyter notebook
" navegue a la carpeta deseada.
En mi caso, todos mis archivos python están en "D: / Python".
Luego escribe el comando "jupyter notebook" y allí lo tienes. Usted ha cambiado su directorio de trabajo.
Es posible que la solución superior no funcione para usted si ha instalado la última versión de Python en Windows. He instalado Python 3.6.0 :: Anaconda 4.3.0 (64-bit) y quería cambiar el directorio de trabajo de iPython Notebook llamado Jupyter y así es como funcionó para mí.
Paso-1: abra su CMD y escriba el siguiente comando.
Paso 2: ahora ha generado un archivo en tu carpeta .jupyter. Para mí, es C: / Users / Admin.jupyter. Allí encontrará un archivo llamado jupyter_notebook_config.py. Haga clic derecho y edítelo. Agregue la siguiente línea y establezca la ruta de su directorio de trabajo. Establezca su propio directorio de trabajo en lugar de "I: / STUDY / Y2-Trimester-1 / Modern Data Science"
Hemos terminado. Ahora puede intentar reiniciar su Jupyter Notebook. Espero que esto te sea útil. Gracias
Esta pregunta sigue apareciendo cuando busco ipython change pwd
aunque no estoy interesado en un notebook
, sino en un terminal o una consola virtual. Al no encontrar una entrada de configuración relevante, lo intenté:
# lines of code to run at IPython startup.
c.InteractiveShellApp.exec_lines = [''%cd /home/paul/mypy'']
Esta es la clase de shell
nivel base; hay entradas de Terminal y Console (y probablemente notebook) que podrían personalizar aún más la acción.
De los documentos parece que las declaraciones de import
son más comunes en la entrada, pero parece que muchos comandos mágicos también funcionan.
Para Linux y Windows: solo modifique 1 línea, y puede cambiarla.
1. Open file
cwp.py
en
C: / Users / [nombre de tu computadora] / Anaconda2
.
2. find the line
os.chdir (carpeta_de_datos)
al final del archivo.
Cambiarlo a
os.chdir ("la carpeta de trabajo esperada")
por ejemplo: os.chdir ("D: / Jupyter_folder")
3. save and close.
Funcionó.
Actualizar:
Cuando se trata de MacOS, no pude encontrar el cwp.py. Esto es lo que encontré:
Abra la terminal en su Macbook, ejecute '' jupyter notebook --generate-config ''.
Creará un archivo de configuración en / Users / catbuilts / .jupyter / jupyter_notebook_config .
Abra el archivo de configuración, luego cambie esta línea # c.NotebookApp.notebook_dir = '''' (busque la palabra ''_dir'')
a c.NotebookApp.notebook_dir = '' su ruta '' y recuerde dejar de comentar esta línea también.
Por ejemplo, el mío es ''/ Users / catbuilts / Jupyter_Projects /''
Para Mac OS X con espacios en blanco en el directorio de destino (seguimiento de @pheon). Agregue un par adicional de comillas dobles alrededor de $ (...) en la línea 2. Ver: https://.com/a/1308838 (Sean Bright)
#!/bin/bash
cd "$(dirname "$0")" && pwd
ipython notebook
Para hacer el mismo truco que se describe a continuación para Windows en OS X, cree este script de shell
#!/bin/bash
cd $(dirname "$0") && pwd
ipython notebook
Llámalo ipython-notebook.command y hazlo ejecutable.
Colóquelo en el directorio en el que desea trabajar, luego haga doble clic en él.
Por lo general, $ ipython notebook
lanzará los cuadernos y núcleos en el directorio de trabajo actual de la terminal.
Pero si desea especificar el directorio de inicio, puede usar la opción --notebook-dir
siguiente manera:
$ ipython notebook --notebook-dir=/path/to/specific/directory
Pruebe el módulo nbopen . Cuando lo instale e integre con el explorador de Windows, podrá abrir cualquier cuaderno haciendo doble clic en él.
Si está usando ipython en Linux, entonces siga los pasos:
!cd /directory_name/
Puede probar todos los comandos que funcionan en su terminal de Linux.
!vi file_name.py
Simplemente especifique el símbolo de exclamación (!) Antes de los comandos de linux.
Si está usando ipython en Windows, entonces siga los pasos:
- navegue al cuaderno ipython en programas y haga clic derecho en él y vaya a propiedades.
- En la pestaña de acceso directo, cambie el directorio ''Iniciar en'' al directorio deseado.
- Reinicia el kernal.
Simplemente siga la guía en el sitio oficial , también copiada a continuación. Para el primer paso, en lugar de copiar el iniciador, puede ir al menú de inicio y hacer clic con el botón derecho para abrir la ubicación.
Copie el iniciador de Jupyter Notebook desde el menú al escritorio.
Haga clic con el botón derecho en el nuevo iniciador y cambie el campo "Comenzar en" pegando la ruta completa de la carpeta que contendrá todos los blocs de notas.
Haga doble clic en el iniciador de escritorio de Jupyter Notebook (el icono muestra [IPy]) para iniciar la aplicación Jupyter Notebook, que se abrirá en una nueva ventana (o pestaña) del navegador. Tenga en cuenta también que también se abrirá una ventana de terminal secundaria (utilizada solo para el registro de errores y para el apagado). Si solo se inicia el terminal, intente abrir esta dirección con su navegador: http://localhost:8888/ .
También puede usar AutoHotKey con un script simple para abrir un servidor Jupyter Notebook en un directorio predeterminado (CTRL + I) o una ruta resaltada en el explorador (o en otro lugar con CTRL + MAYÚS + I).
#SingleInstance Force
#NoTrayIcon
SetTitleMatchMode RegEx
; Press CTRL+ALT+I in a Windows Explorer window to launch a IPython notebook server in the current folder.
^+!i::
; Get the current path.
Send ^l
; Backup the current clipboard.
ClipSaved := ClipboardAll
; Copy and save the current path.
Send ^c
ClipWait
x = %Clipboard%
; Restore the clipboard.
Clipboard := ClipSaved
ClipSaved = ; Free the memory in case the clipboard was very large.
; Now, run the IPython notebook server.
RunWait, ipython notebook --notebook-dir "%x%", , min
return
^i::
; Now, run the IPython notebook server.
RunWait, jupyter notebook --notebook-dir "C:/Path/To/Workspace", , min
return
; Press CTRL+ALT+P to kill all Python processes.
^!p::
Run, taskkill /f /im python.exe, , min
return
Tengo Python e ipython de 32 y 64 bits usando WinPython, quería que las versiones de 32 y 64 bits apuntaran al mismo directorio de trabajo para el portátil ipython.
Seguí las sugerencias anteriores aquí, todavía no pude hacer funcionar mi configuración.
Esto es lo que hice, en caso de que alguien lo necesite:
Parece que el cuaderno Ipython estaba usando la configuración de C:/pythonPath/winpythonPath/settings/.ipython/profile_default
Aunque ipython locate
devuelve C:/users/Username/.ipython
Como resultado, la modificación del archivo ipython_notebook_config.py no hizo nada para cambiar mi directorio de trabajo.
Además ipython profile_create
no creaba los archivos python necesarios en C:/pythonPath/winpythonPath/settings/.ipython/profile_default
Estoy seguro de que hay una manera mejor , pero para resolver esto rápidamente, copié los archivos python editados de C:/users/Username/.ipython/profile_default
a C:/pythonPath/winpythonPath/settings/.ipython/profile_default
Ahora (finalmente) ipython notebook 64 bit se ejecuta y me proporciona el directorio de trabajo correcto
Nota sobre Windows No tengo problemas con la siguiente sintaxis:
c.NotebookApp.notebook_dir = u''C:/Users/Path_to_working_directory''
Tengo un método muy efectivo para guardar los cuadernos en una ubicación deseada en Windows.
- Actividad única: asegúrese de que la ruta de
jupyter-notebook.exe
esté guardada en la variable de entorno. - Abra su directorio deseado desde el Explorador de Windows o desde un CD desde el símbolo del sistema
- Desde el explorador de Windows en su carpeta deseada, seleccione la barra de direcciones (de forma que la etiqueta de ruta esté completamente seleccionada) y escriba
jupyter-notebook.exe
- voila !! el cuaderno se abre desde la carpeta deseada y cualquier nuevo cuaderno se guardará en esta ubicación.
Ubique su binario de ipython. Si ha utilizado anaconda para instalar ipython-notebook en un mac, es probable que esté en el directorio /Users/[name]/anaconda/bin/
en ese directorio, en lugar de iniciar su computadora portátil como
./ipython notebook
agregue una --notebook-dir=<unicode>
.
./ipython notebook --notebook-dir=u''../rel/path/to/your/python-notebooks''
Uso un bashscript en mi directorio ipython bin para iniciar mis cuadernos:
DIR=$(dirname $0)
$DIR/ipython notebook --notebook-dir=u''../rel/path/to/your/python-notebooks''
Nota: la ruta al directorio del portátil es relativa al directorio bin de ipython.
Una modificación más simple del truco de Windows anterior, sin la necesidad de codificar el directorio.
A) Cree un archivo de proceso por lotes con los siguientes contenidos: (Nota: Un archivo por lotes es un archivo de texto simple que contiene comandos que se pueden ejecutar en la ventana de cmd. Debe tener una extensión ''.bat'', por lo tanto ... lo hará necesidad de desactivar la configuración de la carpeta que oculta extensiones de tipos conocidos)
rem -- start_ipython_notebook_here.bat ---
dir
ipython notebook
pause
B) Copie y pegue el archivo por lotes en cualquier carpeta en la que desee iniciar un servidor portátil.
(Asegúrese de que sea una carpeta que tenga permiso para editar. "C: /" no es una buena opción).
C) Haga doble clic en el archivo por lotes en el Explorador de Windows.
El servidor portátil debe comenzar como lo hace normalmente.
simplemente cambie al directorio preferido en CMD, así que si está en
C:/Users/USERNAME>
solo cambia el camino como este
C:/Users/USERNAME>cd D:/MyProjectFolder
el cursor CMD se moverá a esta carpeta
D:/MyProjectFolder>
A continuación puedes llamar a jupyter
D:/MyProjectFolder>jupyter notebook
jupyter notebook --help-all
podría ser de ayuda:
--notebook-dir=<Unicode> (NotebookManager.notebook_dir)
Default: u''/Users/me/ipynbs''
The directory to use for notebooks.
Por ejemplo:
jupyter notebook --notebook-dir=/Users/yourname/folder1/folder2/
Por supuesto, puede configurarlo en sus perfiles si es necesario, es posible que deba escapar de la barra invertida en Windows.
Tenga en cuenta que esto anulará cualquier ruta que haya configurado en un archivo jupyter_notebook_config.py. (Donde puede establecer una variable c.NotebookApp.notebook_dir
que será su ubicación de inicio predeterminada).
Para Windows 10
Busque jupyter_notebook_config.py en C: / Users / your_user_name / .jupyter o búsquelo con cortana.
Si no lo tiene, vaya a la línea de cmd y escriba:
jupyter notebook --generate-config
Abra jupyter_notebook_config.py y realice una búsqueda ctrl-f para:
c.NotebookApp.notebook_dir
Descoméntelo quitando el #.
Cambiarlo a:
c.NotebookApp.notebook_dir = ''C: / your / new / path''
Nota: Puede poner au al frente de la primera '' , cambiar // a / , o cambiar la '' a '' . No creo que importe.
Vaya a su enlace Jupyter Notebook y haga clic derecho sobre él. Seleccionar propiedades. Vaya al menú contextual y haga clic en Destino. Busque% PERFIL DE USUARIO%. Bórralo. Salvar. Reinicia Jupyter.
Un buen truco para quienes usan IPython en Windows es que puede hacer que un ícono de ipython en cada uno de sus directorios de proyectos esté diseñado para abrirse con el notebook apuntando a ese proyecto elegido. Esto ayuda a mantener las cosas separadas.
Por ejemplo, si tiene un nuevo proyecto en C: / fake / example / directory
Copie un icono de un cuaderno de ipython en el directorio o cree un nuevo enlace al shell de Windows "cmd". A continuación, haga clic derecho en el icono y "Editar propiedades"
Establezca las propiedades de acceso directo a:
Target:
C:/Windows/System32/cmd.exe /k "cd C:/fake/example/directory & C: & ipython notebook --pylab inline"
Start in:
C:/fake/example/directory/
(Tenga en cuenta la barra agregada al final de "iniciar en")
Esto ejecuta la línea de comandos de Windows, cambia a su directorio de trabajo y ejecuta el cuaderno ipython apuntando a ese directorio.
Suelta uno de estos en cada carpeta del proyecto y tendrás los grupos de portatiles de ipython mantenidos en buenas condiciones y separándolos a la vez que solo haces un doble clic.
ACTUALIZACIÓN: IPython ha eliminado el soporte para la línea de comando en línea de pylab así que la solución para eso con este truco es simplemente eliminar "--pylab en línea" si tienes una versión de IPython más nueva (o simplemente no quieres pylab obviamente).
ACTUALIZAR PARA JUPYTER NOTEBOOK ~ version 4.1.1
En mis máquinas de prueba y como se informa en los comentarios a continuación, la compilación más reciente de jupyter parece verificar el directorio de inicio y ejecutarlo como el directorio de trabajo. Esto significa que la anulación del directorio de trabajo no es necesaria.
Por lo tanto, su atajo puede ser tan simple como:
Target (if jupyter notebook in path):
jupyter notebook
Target (if jupyter notebook NOT in path):
C:/Users/<Your Username Here>/Anaconda/Scripts/jupyter.exe notebook
Si jupyter notebook no está en tu PATH, solo necesitas agregar la referencia completa del directorio al frente del comando. Si eso no funciona, intente trabajar desde la versión anterior. Muy cómodamente, ahora "Comenzar a:" puede estar vacío en mis pruebas con 4.1.1 y posterior. Tal vez leyeron esta entrada en SO y les gustó, tan largo upvotes, nadie lo necesita más :)
%pwd #look at the current work dir
%cd #change to the dir you want
import sys
sys.path.append(''C:/'')