如何使cmd运行命令为中文提示

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使cmd运行命令为中文提示相关的知识,希望对你有一定的参考价值。

解决方法如下:
将下面的内容复制到记事本,另存为扩展名为“.reg”的文件,双击导入注册表就完成了 CMD 命令提示符下汉字输入和汉字显示的恢复
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe]
"CodePage"=dword:000003a8
再说明一下:
十六进制"000003a8"或十进制"936",表示“936 (ANSI/OEM - 简体中文 GBK)”。
十六进制"000001b5"或十进制"437",表示“437 (OEM - 美国)”。
十六进制"000003a4"或十进制"932",表示“932 (ANSI/OEM - 日文 Shift-JIS)”。
十六进制"000003b5"或十进制"949",表示“949 (ANSI/OEM - 韩文)”。
十六进制"000003b6"或十进制"950",表示“ANSI/OEM - 繁体中文 Big5)”。

若是你无法在CMD命令行里使用任何中文输入法,在CMD命令行窗口无法选择输入法或按快捷键调出输入法
CONIME(conime.exe)是输入法编辑器,允许用户使用标准键盘输入复杂的字符与符号(包括汉字)。显然,如果你需要在CMD下输入中文就需要CONIME的支持,如果在cmd下不能输入中文,很可能是conime被关闭了。为了输入中文,我们需要修改一下注册表。打开注册表,找到HKEY_CURRENT_USER\Console]" 项,把“LoadConIme"的值改为1.重新打开CMD,看是不是能输入中文了,需要注意的是,很多中文输入法在CMD里面输入中文比较麻烦,需要先按Alt+Shift,再按Ctrl+Space,这样才能调出输入法菜单来。
参考技术A 操作方法
直接在CMD里输入 “chcp 936” 回车 试试看 不过这样每次运行CMD都要输一次
也可以改注册表 HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe下找到CodePage改为3a8

图示如下

如何使批处理文件在 anaconda 提示符下运行

【中文标题】如何使批处理文件在 anaconda 提示符下运行【英文标题】:How to make batch files run in anaconda prompt 【发布时间】:2018-02-28 13:00:10 【问题描述】:

在 windows 中安装 anaconda3 后,我可以从 anaconda 提示符运行 python 命令,但不能从 windows 命令提示符运行。 我想创建一个桌面快捷方式来激活我的环境并从中运行 spyder。以前,我会使用 .bat 文件执行此操作,但现在我无法从 cmd.exe 运行 python 命令,这不起作用。

是否有另一种方法可以为 anaconda 提示符运行批处理文件? 我知道我可以修改我的PATH 以让cmd.exe 运行python 命令,但如果可能的话我想避免这种情况。

【问题讨论】:

我相信 Anaconda 提示符所做的只是打开 CMD 并运行 <anaconda_dir>/Scripts/activate.bat <anaconda_dir> 作为第一个命令,因此您可以尝试将其放在脚本的顶部。 谢谢,工作,这很容易! 太棒了!我会将其移至答案,以便您将问题标记为已回答。 是未知语法。并且 anaconda 并不总是安装在同一个目录中。 【参考方案1】:

我相信 Anaconda 提示符所做的只是打开 CMD 并运行一个批处理文件。编写脚本的第一个命令:

call <anaconda_dir>/Scripts/activate.bat <anaconda_dir>

【讨论】:

也许在你的批处理文件中使用call,所以它不会在第一个命令后退出? 我发现即使使用call,我的提示也会关闭,我在文件末尾添加了cmd /k 解决方案有点不尽人意,因为anaconda目录在每个系统上都不一样。最好有一个类似于 Linux 的 shebang,它告诉脚本不要使用 cmd.exe 而是使用 anaconda 提示符调用。 您必须手动将您的 anaconda 目录插入到我已指示 的位置,除非我缺少环境变量。 anaconda 提示符实际上只是 cmd.exe,而且“如果 Windows 更像 Linux 会更好”不是一个选项,所以 shebang 不太有意义。 如果您创建了多个 conda 环境,则可以通过将其作为参数提供给 activate.bat 文件来激活特定环境。所以命令会变成 call /Scripts/activate.bat 【参考方案2】:

扩展杰里米的答案:

您确实需要将call 用于“activate.bat”脚本以及任何后续的 Anaconda/Python 相关命令。否则运行命令后提示将立即退出,即使您使用pause 语句也是如此。请看下面的例子:

set root=C:\Users\john.doe\AppData\Local\Continuum\anaconda3

call %root%\Scripts\activate.bat %root%

call conda list pandas

pause

【讨论】:

确实不错,但是脚本运行后如何使用打开的提示符?有什么不退出的命令吗?【参考方案3】:

感谢这个线程,我解决了获取 Windows 批处理文件以打开 Ananconda Prompt 然后运行一些 python 代码的挑战。

这是批处理文件:

@echo on
call C:\ProgramData\Anaconda3\Scripts\activate.bat
C:\ProgramData\Anaconda3\python.exe "D:\Documents\PythonCode\TFLAPI\V1.py"

【讨论】:

非常感谢您 这是带有工作示例的完整解决方案。 @JedB 当我双击这样的 .bat 文件时,我会得到一个终端窗口以及我的 GUI(使用 PySimpleGUI)。 .bat 里面有什么可以隐藏终端窗口的事情吗? @DavidDoria 我不知道有什么办法。【参考方案4】:

添加

call "<anaconda_dir>\Scripts\activate.bat"

到脚本的开头(它实际上不需要参数,默认情况下会激活 base 环境)。

请注意,在此行之后,您可以使用 CONDA_ envvars!

【讨论】:

【参考方案5】:

对于 Windows,请在批处理文件中使用以下脚本来执行 Python 脚本。只需像这样更改您的个人文件路径:

cmd /c C:\ProgramData\Anaconda3\condabin\conda.bat run "C:\ProgramData\Anaconda3\python.exe" "C:\Users\User Name\Path to your Python File\Python File.py"

【讨论】:

【参考方案6】:

Powershell 版本:

$qtconsole="C:\Users\<YourUserName>\.anaconda\navigator\scripts\qtconsole.bat"
start-process $qtconsole -WindowStyle Hidden

注意:由于 Linux QT GUI 库的 DLL 限制,此脚本一次只会启动一个 qtconsole 实例,只支持同时运行的同一 exe 的一个实例。这可能就是为什么他们使用“Anaconda Navigator”来启动 QtConsole 程序来绕过这个限制。

【讨论】:

安装 "active state python 3.5" 而不是 anaconda.. 确保它在你的路径中然后输入: "PS C:\user\dfsdsdf> jupyter notebook" ...你可以习惯使用笔记本代替用于小型计算的 qtconsole【参考方案7】:

如果您使用的是 Windows 操作系统,则可以作为上述解决方案的替代方案。你可以使用 git bash

    您需要将conda.sh 的路径添加到.bash_profile 或任何名称,以便能够运行 conda 命令。这是一个例子:

    echo ". C:/Users/user/Anaconda3/etc/profile.d/conda.sh" >> ~/.bash_profile 
    

    运行你的脚本 => . script.sh

这也是一个不错的选择。

查看this 和this 了解更多详情。 希望它会帮助某人:)。

【讨论】:

【参考方案8】:

扩展@N4v 答案,因为这是我调用 Python 脚本的唯一方法。 Python 版本是 3.7

set root=C:\Users\xxxx\Anaconda3 #Anaconda default  folder on my computer
set env1=C:\Users\xxxx\Anaconda3\envs\py37 #My Python environment folder. The name I gave is  py37. Can be specific to yours
call %root%\Scripts\activate.bat %env1% #Call command to activate py37 environment.
python "C:\Path to the folder with python file\Pythonfile.py" #Run the  file  of interest after running  python specific  to the called environment. Replace  this  with your files path and name. 

pause

【讨论】:

【参考方案9】:

根据@ivan_pozdeev 的回答,我发现以下对我来说是最干净的解决方案:

@ECHO OFF    
CALL "<anaconda_dir>\Scripts\activate.bat" [<conda_environment_if_not_base>]
%CONDA_PYTHON_EXE% "<full_path_to_your_python_script>" %1 %2 %3 %4 %5 %6 %7 %8 %9
conda deactivate

例如:

@ECHO OFF
CALL "E:\ProgramData\Anaconda3\Scripts\activate.bat"
%CONDA_PYTHON_EXE% "C:\Users\<user>\Documents\Python3\my_project\src\my_script.py" %1 %2 %3 %4 %5 %6 %7 %8 %9
conda deactivate

通过在批处理文件的末尾包含conda deactivate,您可以使命令行保持您开始的状态。如果您需要不同的 conda 环境,可以在 activate.bat 之后指定。

【讨论】:

【参考方案10】:

通过 .bat 执行 anaconda 脚本的最简单方法

set venv=name_of_virtual_env

call %USERPROFILE%\Anaconda3\Scripts\activate %USERPROFILE%\Anaconda3
call activate %venv%

:: Change directory to the relative path that's needed for script
cd %~dp0

:: Run script at this location
call %USERPROFILE%/Anaconda3/envs/%venv%/python.exe "%~dp0\main.py"
PAUSE

%USERPROFILE% == C:\Users\name

%~dp == C:\Users\name\path\to\Project\RUN.bat

"%~dp0\main.py" == 运行目标脚本的路径

【讨论】:

以上是关于如何使cmd运行命令为中文提示的主要内容,如果未能解决你的问题,请参考以下文章

怎么用命令运行cmd?

win10怎么使cmd命令符进入d盘?

如何从 VB.NET 运行 DOS/CMD/命令提示符命令?

如何解决win7系统无法运行cmd命令提示符

windows怎么打开命令提示符

怎么在powershell里面运行cmd命令