使用简单的 tkinter 脚本替代“在此处打开命令窗口”






3.86/5 (5投票s)
Tkinter “在此处打开命令窗口”启动器
引言
这里提供一个简单的 Python 脚本,解决 Windows 环境下 shell 编程的一个主要问题,即:如何在正确的文件夹中打开命令窗口?
多年来,很多人在使用 Microsoft Explorer 内置的“Shift+单击文件夹”快捷方式时,不小心点击错误。就我个人而言,我一直觉得这种方法有点笨拙,容易混淆 Shift 和 Control 键,并且没有点击到激活“在此处打开命令窗口”菜单的正确文件夹图标。
最近,我在 Windows 上使用 Python 和 tkinter 玩耍时,发现了一种新的技巧,可以让你在任何想要的地方打开命令窗口。这个想法非常简单,几乎是显而易见的:程序只是提示用户选择一个目录,然后在选定的目录中打开一个自定义的 Windows 命令框。
为什么使用 Python 解决这个问题?仅仅是因为当时我需要在一个选定的目录中打开命令框时,我正在使用 Python。当然,我可以想象一个用 C# 编写的免费软件,执行类似的功能,并且可以通过提供一个带有可调节参数和可加载配置文件的启动菜单来扩展这个想法,从而创建你的命令框。我只是提供了一个最简单、最通用的方法,使用 Python。
Using the Code
代码非常简单。弹出一个 tkinter 对话框,提示用户选择一个目录。然后,将此信息传递给系统调用,以启动一个命令框。
在这个简单的程序中,在 tkinter 环境下唯一的技巧是隐藏顶级窗口,以便只显示对话框。
这是代码
#!python3
"""
File : m$term.pyw
Creator : WPM (Bill Moore)
tkinter gui to open windows command box
in a selected directory
SETUP: make sure pyw is associated with "pythonw.exe" from microsoft explorer
and place this script on your desktop so that it can be double-clicked
whenever you need it.
"""
import tkinter as tk
import tkinter.filedialog
import sys
import os
def TkStartTerm():
result = tk.filedialog.askdirectory(
initialdir = ".",
mustexist = True,
title = "Open Command Window Here"
)
if not result:
return None
os.chdir(result)
os.system(
'start cmd /k "' +
'color 1f & ' +
'mode con: cols=140 lines=15000 &' +
'title cmd ' +
'"'
)
def TkRootHide():
tk.Tk().withdraw()
##########################################
if __name__ == '__main__':
TkRootHide()
TkStartTerm()
sys.exit(0)
就这样。尽情享受吧!