我想学习在Windows上更好地使用命令提示符,以便更好地控制我所做的事情,并且仅仅是为了获得学习经验。我现在主要的烦恼是所有打字。如果要对路径较大的文件执行操作,请坐在那里至少键入一分钟,如果输入有误,则必须按向上箭头键并滚动浏览整个内容,然后查找我做错了。有没有什么工具可以简化这一过程?
我想学习在Windows上更好地使用命令提示符,以便更好地控制我所做的事情,并且仅仅是为了获得学习经验。我现在主要的烦恼是所有打字。如果要对路径较大的文件执行操作,请坐在那里至少键入一分钟,如果输入有误,则必须按向上箭头键并滚动浏览整个内容,然后查找我做错了。有没有什么工具可以简化这一过程?
Answers:
如果打算仅在Windows下使用命令提示符,则可以使用Windows PowerShell,因为它比初始命令提示符更易于使用,并且可以从类似* nix的终端复制行为。(它还提供了许多功能,但起初,至少对我来说,这是一个“更简单的命令外壳”)。
编辑:更改图片为更“友好”的。
您可以使用该Tab键自动完成文件名。尽管切记,您必须首先键入足够的文件名才能唯一地标识它,否则您将不得不在不正确的匹配项之间进行重新排序。例如,您有一个包含这些文件的文件夹,它是您当前所在的目录cmd
:
。 .. 可执行文件 Sup.txt 超级用户
如果要自动完成SuperUser.COM
,则必须键入,supe
然后按Tab,因为其他文件都不以这4个字符开头。请注意,如果您键入su
然后按Tab,则可以再按Tab两次以进入SuperUser.COM,也可以键入ShiftTab以向后浏览列表并到达那里。
另一个技巧是,如果文件位于浏览器窗口中,则可以将其拖到cmd
窗口中,它将为您键入名称。
shift
+ <any key that cycles through tabs/windows>
是永远等价于反转如alt-tab
- > alt-shift-tab
。
“ ...将文件或文件夹从资源管理器窗口拖放到命令提示符;这将插入引用的路径,就像您手动粘贴了该路径一样。”
这是减少长文件路径中涉及的键入量的另一种方法。
这是功能键动作的完整列表:
F1 retypes the previous command one character at a time
F2 brings up a dialog and asks “Enter the char to copy up to:”
F3 retypes the last command in full
F4 brings up a dialog and asks “Enter char to delete up to:”
F5 as for F3
F6 Print EOF character (Ctrl+Z)
F7 brings up a dialog of all the recent command history
F8 brings up each of the most recent commands, one at a time
F9 brings up a dialog and asks “Enter command number:”
按F7将列出最后执行的命令。
cd \
返回c:
目录。
通常,您可以通过输入正确的目录来减少键入的内容。通过在文件夹类型关联中添加cmd.exe,可以在“资源管理器”窗口中看到的目录中打开命令外壳。
(工具-文件夹选项-文件类型-文件夹-高级-新建-cmd)
然后,当通过右键单击该文件夹选择cmd时,打开的命令窗口将以其所在目录作为当前目录。
如果Windows PowerShell太强大了,那么还有一些cmd替换shell:
可以通过Google找到更多信息。
我建议您使用命令提示符。
我知道,这看起来很滑稽,但这是很严重的建议,即使不是立即有用的。有很多要知道的知识,要深入吸收它,您必须一遍又一遍地使用它。
启用快速编辑模式以:
我还将字体和布局更改为比默认位图更令人愉快的内容。
最后,在编辑窗口中添加更多行和列,并在缓冲区中添加更多行。
屏幕截图是西班牙语,但它们在英语中完全相同
绝对要获取Cygwin的副本,并将其\ bin文件夹添加到PATH变量中。就像一个可用的命令提示符!
但是,实际上,习惯它的唯一方法就是习惯它,所以请使用它!
如果您使用的是XP(对Vista不了解),则可以下载一个Powertoy,它将在浏览器文件夹的上下文菜单中添加“此处打开命令窗口”菜单项。
我发现其他有用的方法是停止对所有内容使用Windows默认路径。它们太难记了,空间可能成为问题。使用更像linux目录结构的东西可以节省时间。我的目录看起来像这样(通过示例):
- C:\usr\bin\firefox
- C:\usr\bin\7zip
- C:\usr\bin\dropbox
- C:\usr\lang\cpp\gcc
- C:\usr\lang\cpp\lib\qt_4_5_0
- C:\usr\lang\python\py25
- C:\usr\home\wrksp\cpp
- C:\usr\home\doc
- C:\usr\home\wrksp\svn
更容易记住的方式。
我个人认为,如果您想学习使用命令提示符而又感到不愉快,则可能不需要使用命令提示符。
一旦需要使用CLI,您就会发现它很有用,甚至令人愉快。如果您要使用它来执行日常任务,那么您就要把头砸在墙上。
一旦熟悉了命令提示符,您就可以将日常任务迁移到那里,仅仅是因为它比总是触摸鼠标要容易:)
利用环境变量。
例如,您无需输入c:\ documents and settings \ username,而只需使用%userprofile%。有关标准环境变量的列表,请键入SET,然后在命令提示符下按Enter。
此外,请熟悉可用的命令-我喜欢它们的两个站点: www.ss64.com 和 www.robvanderwoude.com
您还可以学习批处理脚本-使用该脚本,可以自动化常用任务。
此主题中发布了一些很棒的技巧!
在我看来,发布CMD替代品相当“离题”。但这似乎可以,所以我可以将ColorConsole添加到列表中。
该标签界面,常用命令菜单,复制/剪切和粘贴的确HTML输出是非常有用的功能,我不想再错过。
ps:在“必须具有Firefox插件”线程中尝试:小伙子们,请获得Opera,它内置了好东西Aready!:)
您可能会发现“有用的命令行命令在Windows”从服务器故障很有帮助。实际上,那里有很多有趣的命令行问题,请看一看。
我同意使用powershell的建议。另外,我发现设置函数和别名以将常见任务减少为更少的键入字母非常有用。
例如,要启动http链接,请在我的powershell配置文件中进行设置:
function browse-url { param($url="http://www.google.com/"); (new-object -com shell.application).ShellExecute($url); }
set-alias -name "browse" -value "browse-url"
然后我只需键入browse
以打开google或browse http://....
打开特定链接
列出文件或目录的另一个示例:
function lsa { param($path="."); Get-ChildItem -Force $path }
set-alias -name "la" -value "lsa"
set-alias -name "ll" -value "lsa"
function lsd { param($path="."); lsa $path | ? { $_.PSIsContainer } }
function lsf { param($path="."); lsa $path | ? { !$_.PSIsContainer } }
function lat { param($path="."); lsa $path | sort -property lastwritetime -descending }
function latr { param($path="."); lsa $path | sort -property lastwritetime }
function fi { param($pat,$root="."); gci -r $root | ? {$_.Name -match $pat} | % { $_.FullName } }
然后,我lsa
用来显示目录中的所有项目,包括隐藏的项目。使用la
或ll
作为更短的别名。
我lsd
只列出文件夹,只lsf
列出文件,lat
按上次写入时间排序,以及latr
按相反方向按时间列出。
fi
设置为unix find
命令的简单替代,只是递归地查找文件名。