【问题标题】:Using a .bat to change directories and run Jupyter使用 .bat 更改目录并运行 Jupyter
【发布时间】:2016-06-03 05:14:32
【问题描述】:

我是编码新手,但我只想更改目录并运行 jupyter。问题是 cmd 一旦到达 jupyter notebook 命令就会立即关闭。也试过 cmd /k 但没有效果。我一定是做错了。

F:
cd directoryname
activate environmentname
jupyter notebook
pause

解决方案: 这些命令在 .bat 中执行时由于某种原因关闭了提示(键入时不会)。解决方法是在命令之前键入 call。

F:
cd directoryname
call activate environmentname
call jupyter notebook
pause

【问题讨论】:

  • 请接受您在下面给出的答案,因为这是您接受的解决方案(它也帮助了我:))
  • 这对我也有帮助,在使用“pip install jupyter”安装 jupyter 之后。我认为如果您将其作为软件包的一部分安装(例如 conda),则其他答案是相关的。

标签: python batch-file ipython jupyter


【解决方案1】:

在 .bat 中执行时,由于某种原因,这些命令正在关闭提示(键入时不会)。解决方法是在命令之前键入 call。

F:
cd directoryname
call activate environmentname
call jupyter notebook
pause

【讨论】:

  • 原因:activatejupyter 是批处理文件(activate.batjupyter.bat)。只需执行它们就可以将控制权转移给它们,当它们完成时,解析器就完成了(当您双击第一个脚本时窗口关闭)。 Call 在被调用脚本结束时将控制权返回给原始脚本。
【解决方案2】:

创建一个简单的批处理文件(jnote.bat):

@echo off
call jupyter notebook "%CD%"
pause

在同一文件夹中创建批处理文件的快捷方式并将其重命名为 jupyter-notebook。

打开快捷方式属性并将图标更改为 jupyter.ico。您可以在 Anaconda 发行版的 .\Menu 子文件夹中找到它。您现在应该有一个带有漂亮 jupyter 图标的快捷方式。

将快捷方式复制到您用于笔记本的所有文件夹。 双击快捷方式打开 jupyter-notebook 那个文件夹。

【讨论】:

    【解决方案3】:

    对于 Jupyter,使用:

    %USERPROFILE%\Anaconda3\python.exe %USERPROFILE%\Anaconda3\cwp.py %USERPROFILE%\Anaconda3 %USERPROFILE%\Anaconda3\python.exe %USERPROFILE%\Anaconda3\Scripts\jupyter-notebook-script.py "**file location**"
    

    对于 Jupyter 实验室:

    %USERPROFILE%\Anaconda3\python.exe %USERPROFILE%\Anaconda3\cwp.py %USERPROFILE%\Anaconda3 %USERPROFILE%\Anaconda3\python.exe %USERPROFILE%\Anaconda3\Scripts\jupyter-lab-script.py %USERPROFILE%
    

    将其保存在 .bat 文件中,并在 'UserName' 和 'File Location' 进行必要的更改。将其保留为单行。只需双击该文件即可在该位置打开 jupyter notebook。 注意:文件位置是要打开的笔记本的位置。

    或者,您可以使用相同的命令来创建 Windows 快捷方式,而无需 .bat 文件:

    1. 在桌面,右键->新建->快捷方式。
    2. 作为项目的位置,粘贴上面的代码。

    然后,您可以双击快捷方式启动 jupyter。与 bat 文件不同,您还可以将此快捷方式固定到任务栏。

    有关如何设置 jupyter 实验室的详细信息,请查看Running JupyterLab as a Desktop Application in Windows 10

    【讨论】:

    • 天才。我还发现,通过将 jupyter-notebook-script.py 替换为 jupyter-lab-script.py,您可以根据需要运行 Jupyter Lab。
    【解决方案4】:

    假设activatejupyter 是可执行文件或其他有效命令,那么一切都应该没问题。既然您说cd 命令可能是罪魁祸首,请尝试以下操作:

    也许您正试图更改到不同驱动器上的目录...如果是这种情况,您将需要改用 cd /d directoryname

    如果这不起作用,请尝试在每个命令之间放置一堆 pause 语句,以查看它到底在哪里中断。

    【讨论】:

    • 在所有命令之间和之后暂停会导致 cmd 在 activate environmentname 运行后立即关闭(它会跳过发布命令暂停)但是 cmd /k activate environmentcmd /k jupyter notebook 可以正确运行任一命令。但是我不能使用这种方法运行这两个命令。
    【解决方案5】:

    我找到了一种无需 .bat 即可解决此问题的替代方法。

    在您的开始菜单中搜索“Jupyter Notebook”。你应该找到一个快捷方式:

    “Jupyter Notebook(环境名称)”

    这个快捷方式是在我设置环境时创建的。在我的情况下,环境名称是 py35。

    要更改 Jupyter Notebook 启动的目录,请找到“Anaconda Prompt”快捷方式。然后打开“属性>快捷方式”并将“开始于:”字段更改为您想要的目录。

    【讨论】:

      【解决方案6】:

      你可以使用这个简单的代码:

      d: & activate your_env & jupyter notebook
      

      它真的对我有用

      【讨论】:

        【解决方案7】:

        如果您没有将 conda 添加到路径中,以下脚本可能对您有所帮助。根据https://docs.anaconda.com/anaconda/install/multi-user/,您甚至可能想检查C:\ProgramData\Anaconda,但我不想在批处理脚本中添加一些我自己没有检查过的东西。

        :: Starts JupyterLab
        
        SET CONDA_ENV=my-specific-conda-environment-name
        
        where conda 2> nul
        IF ERRORLEVEL 1 (
            ECHO "Conda is not available in your PATH. Guessing the location of the installation..."
            CALL C:\Users\%USERNAME%\Anaconda3\Scripts\activate %CONDA_ENV% || (
                ECHO "Either Conda or the environment was not found."
                PAUSE
            )
        ) ELSE (
            CALL activate %CONDA_ENV%
        )
        
        CALL jupyter lab || (
            ECHO "JupyterLab encountered an error, please check the error message"
            PAUSE
        )
        
        

        【讨论】:

          【解决方案8】:

          这里是这个问题的批处理文件

          cd directoryname
          call activate envName
          start jupyter notebook
          

          【讨论】:

            【解决方案9】:

            这是我的代码。它在它保存的目录中启动 jupyter notebook:

            @echo on 
            
            cd 'your_path_to_anaconda' /condabin
            call activate.bat
            cd %~dp0
            call jupyter notebook
            cmd \k
            

            【讨论】:

              猜你喜欢
              • 2022-01-09
              • 1970-01-01
              • 2017-12-01
              • 1970-01-01
              • 2020-11-09
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多