120

コンソール (私の場合は PowerShell) でテキスト ファイルを編集する最も簡単な方法を見つけようとしています。Windows7 64ビットを使用しています。edit filename.txtファイルを編集するためにタイプするだけではないことにうんざりしています。それは以前は機能していましたが、すべてが変わりました。Windows コンソール内でテキスト ファイルを表示および編集するためのオプションを教えてください。また、VIM をインストールして学習するように言われたら、顔を殴るつもりです。:-)

4

17 に答える 17

42

なぜメモ帳を使わないのですか?

notepad.exe filename.txt

古いedit.comものは PowerShell で動作します (少なくとも私のボックス: Windows 7 Pro x86) が、x64 では 16 ビット アーキテクチャのため動作しません。

この簡単なエディターをご覧ください。

于 2012-06-15T05:34:04.237 に答える
29

キネシクス テキスト エディター.

機能は最小限ですが、超高速で大きなテキスト ファイルを処理できます。GUI バージョンとコンソール バージョン (k.exe) が含まれています。Linuxでも同じように動作するはずです。

例: 私のテストでは、500MB のディスク イメージを開くのに 7 秒かかりました。

スクリーンショット

于 2013-10-11T09:40:17.350 に答える
26

あなたが私を殴る危険を冒している間、私はあなたが言及した解決策に行き詰まっていると思います. SuperUser に関するこの投稿をご覧ください。

Powershell の x 以外のテキスト エディターはどれですか?

また、Windows 用の nano バージョンもあります。

ナノエディター

誰かがもっと十分な答えを持っていることを願っています。

于 2012-06-15T05:39:34.500 に答える
15

Sven Plathに同意します。ナノは優れた代替手段です。Chocolateyまたはscoopがある場合は、Powershell で次のように入力して nano をインストールできます。

PS C:\dev\> choco install nano
# --OR--
PS C:\dev\> scoop 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 - Enter :-)

于 2017-08-18T19:31:08.743 に答える
5

オンラインから vim をインストールすると、次のように実行できます: vim "filename"そのファイルを編集する

于 2014-02-28T05:16:06.643 に答える
4

choco を介して powershell に nano をインストールできます。これは、テキスト編集機能を powershell に取り込むための摩擦の少ない方法です。

  1. チョコをインストール
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
  1. ナノをインストール
choco install nano
  1. 利益
nano myfile.txt

最良の部分は、それがパスの一部になり、再起動などの後も機能し続けることです:)

于 2019-10-24T20:49:55.463 に答える
1

Windows Nano Docker イメージでデバッグを行う必要があり、ファイルの内容を編集する必要がありました。

Get-ContentSet-Contentbase 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>       

トリックは、base 64 でデコードされた文字列をパイプすることです。Set-Content

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

それはvimではありませんが、その価値のためにファイルを更新できます。

于 2017-11-01T18:00:16.570 に答える
0

Linux 用の Windows サブシステム (wsl) がある場合は、次のコマンドが非常に便利です。

bash -c "vi filename.txt"
于 2021-06-16T01:16:57.833 に答える