在64位Windows中在控制台上编辑文本文件

时间:2012-06-15 05:30:14

标签: text-editor windows-7-x64

我正在尝试找出在控制台中编辑文本文件的最简单方法(在我的案例中为PowerShell)。我正在使用Windows 7 64位。让我觉得我不能只输入edit filename.txt来编辑文件。过去曾经有过工作,但这一切都改变了。我有什么选择在Windows控制台中查看和编辑文本文件,如果你告诉我安装和学习VIM,我会打电话给你。 : - )

17 个答案:

答案 0 :(得分:27)

Kinesics Text Editor

它速度极快,处理大型文本文件,但功能极少。有一个GUI版本和控制台版本(k.exe)包括在内。应该在linux上工作相同。

示例:在我的测试中,打开500mb磁盘映像需要7秒钟。

screenshot

答案 1 :(得分:21)

虽然冒着打击我的风险,但我猜你仍然坚持你提到的解决方案。看一下SuperUser上的帖子:

Which are the non-x text editors in Powershell?

此外,还有一个适用于Windows的纳米版本:

Nano Editor

我现在会躲避和掩护,希望有人会有更充分的答案。

答案 2 :(得分:20)

为什么不使用记事本?

notepad.exe filename.txt

旧的edit.com在PowerShell中工作(至少在我的盒子上:Windows 7 Pro x86),但在x64中由于其16位架构而无法正常工作。

您可以查看this简易编辑器。

答案 3 :(得分:12)

有点复活,但对于其他任何人来看这个问题,请看一下Micro编辑器。它是一个没有依赖关系的小型独立EXE,具有本机Windows 32 \ 64版本。适用于PowerShell和CMD.EXE。

enter image description here

答案 4 :(得分:7)

顺便说一句,你可以安装Far Manager(一个很棒的OFM)并按照这样的方式调用它的编辑器:

Far /e filename.txt

答案 5 :(得分:6)

从在线安装vim,然后你可以这样做:      vim“filename”来编辑该文件

答案 6 :(得分:6)

我同意Sven Plath。 Nano是一个很好的选择。如果您设置了Chocolatey。通过在Powershell中键入以下内容来安装nano:

PS C:\dev\> choco install nano

然后,要编辑somefile.txt,请输入:

PS C:\dev\> nano somefile.txt

非常整洁!

修改 Nano在我的Windows 10机器上运行良好,但是第一次在我的Windows 7机器上加载需要非常长的时间。这让我在Win 7笔记本电脑上切换到vim(vi)

PS C:\dev\> choco install vim
PS C:\dev\> vim $profile

在powershell配置文件中添加一行到Set-Alias(sal)

sal vi vim

Esc - : - x - 输入: - )

答案 7 :(得分:1)

我必须在 Windows Nano docker镜像上进行一些调试,并且需要编辑文件的内容,他们会猜到它很难。

我使用了Get-ContentSet-Content以及base 64编码/解码的组合来更新文件。例如

编辑foo.txt

PS C:\app> Set-Content foo.txt "Hello World"                                                                                                                                                                                        
PS C:\app> Get-Content foo.txt                                                                                                                                                                                                      
Hello World                                                                                                                                                                                                                         
PS C:\app> [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String("TXkgbmV3IG11bHRpDQpsaW5lIGRvY3VtZW50DQp3aXRoIGFsbCBraW5kcyBvZiBmdW4gc3R1ZmYNCiFAIyVeJSQmXiYoJiopIUAjIw0KLi4ud29ybGQ=")) | Set-Content foo.txt 
PS C:\app> Get-Content foo.txt                                                                                                                                                                                                      
My new multi                                                                                                                                                                                                                        
line document                                                                                                                                                                                                                       
with all kinds of fun stuff                                                                                                                                                                                                         
!@#%^%$&^&(&*)!@##                                                                                                                                                                                                                  
...world                                                                                                                                                                                                                            
PS C:\app>       

技巧是将基本64解码的字符串传递给Set-Content

[System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String("...")) | Set-Content foo.txt 

它没有vim但我可以更新文件,因为它的价值。

答案 8 :(得分:1)

在linux中,我是Nano的乐趣,我总是使用nano,真的是一个很好的选择。有一个版本的Windows。这是链接https://nano-editor.org/dist/win32-support/

然而,更多时候我们需要尽可能快地从命令行打开有问题的文件,而不是打开时间。我们可以使用notepad.exe,我们可以使用记事本++,是的,我们可以使用 sublim text 。我认为没有一个轻量级,太强大的编辑器。这里有崇高的文字。对于这件事,我们只是不想离开命令行,或者我们想要使用命令行来快速。是的我们可以使用sublime文本。它包含一个命令行,可以让您在sublime文本中快速打开文件。您还可以使用不同的选项参数。在这里你是如何做到的。

首先,您需要知道 subl.exe 。 sublim。

的命令行界面

enter image description here

1-> 首先我们创建一个批处理文件。内容

enter image description here

@ECHO OFF

"C:\Program Files\Sublime Text 3\subl.exe" %*

我们可以随时随地保存。我更喜欢在sublime文本安装目录上创建一个目录。并保存了我们编写和创建的批处理文件。

(注:改变以上的路径)。

2-> 我们将该文件夹添加到路径系统环境变量中。就是这样。

enter image description here

或从系统配置(Windows 7/8/10)

enter image description here

然后:

enter image description here

然后:

enter image description here

然后我们复制路径:

enter image description here

然后我们将它添加到路径变量:

enter image description here

太快了!

启动一个新的cmd,现在你已经 subl 命令运行良好了!

enter image description here

打开一个文件,只需使用 subl 命令作为其他人:

subl myfileToOpen.txt

您也可以使用其中一个选项参数(键入--help以在上图中看到它们)。

另请注意,您可以使用与您选择的任何编辑器相同的方法。

答案 9 :(得分:1)

我是一名退休工程师,在60年代与DOS,Fortran,IBM360等一起成长,与此博客上的其他人一样,我非常想念64位Windows中命令行编辑器的丢失。在花了一周时间浏览互联网并测试编辑后,我想分享我最好的解决方案:Notepad ++。它与DOS编辑相去甚远,但有一些附带的好处。不幸的是,它是一个屏幕编辑器,需要鼠标,因此很慢。另一方面,它是一个体面的Fortran源编辑器,并显示行和列号。它可以为正在编辑的文件保留多个选项卡,甚至可以记住光标的最后位置。我当然会继续键入键盘代码(50年的习惯)但令人惊讶的是至少其中一些是有效的。也许不是一个记录的功能。我将编辑器重命名为EDIT.EXE,设置它的路径,并从命令行调用它。这不是太糟糕。我和它一起生活。 BTW注意不要在Fortran源中使用tab键。在文本中放入ASCII 6。它是隐形的,至少gFortran无法处理它。 Notepad ++可能有很多我没有时间搞乱的功能。

答案 10 :(得分:0)

如果你有 linux 的 windows 子系统 (wsl),你会发现下面的命令非常有用:

bash -c "vi filename.txt"

答案 11 :(得分:0)

不确定这是否会使任何人受益,但是如果您使用的是Azure CloudShell PowerShell,则可以键入:

code file.txt

Visual Studio代码将与要编辑的文件一起弹出,非常棒。

答案 12 :(得分:0)

您可以执行以下操作:

bash -c "nano index.html"

上面的命令使用Powershell中的nano编辑器打开index.html文件。

或者,您可以通过以下命令使用vim编辑器

bash -c "vi index.html"

答案 13 :(得分:0)

您可以通过choco将nano安装在powershell中-这是一种将文本编辑功能引入powershell的低摩擦方式:

  1. 安装Choco
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
  1. 安装Nano
choco install nano
  1. 利润
nano myfile.txt

最好的部分是它成为路径的一部分,并在重新启动等过程中保持工作状态:)

答案 14 :(得分:0)

如果使用Windows容器并且想要更改任何文件,则可以轻松地在Powershell控制台中获取和使用Vim。

要使用PowerShell脱壳到Windows Docker容器:

docker exec -it <name> powershell

  • 首先获得Chocolatey软件包管理器

    Invoke-WebRequest https://chocolatey.org/install.ps1 -UseBasicParsing | Invoke-Expression;

  • 安装Vim

    choco install vim

  • 刷新环境变量 您只需exit并将其外壳返回容器

  • 转到文件位置并对其进行vim file.txt

答案 15 :(得分:0)

有很多方法可以在Windows 7上编辑文本文件。 通常人们安装Sublime,Atom和Notepad ++作为编辑器。 对于命令行,我认为Basic Edit命令(通过在64位计算机上不起作用的方式)是好的;或者我发现类型con&gt;文件名作为一个非常值得尊敬的方法。如果Windows是新安装的,一个人想避免使用记事本。这可能是它!! The perfect usage of Type as an editor :)

图片的参考: - https://www.codeproject.com/Articles/34280/How-to-Write-Applet-Code

答案 16 :(得分:0)

我想你可以使用记事本,就像这样:

notepad myfile.extension

它应该在记事本中打开。