ファイル名が1つしか許可されていませんエラー

ファイル名が1つしか許可されていませんエラー

時にはこれを忘れて、書き込みsudo vim権限のないファイルを開くことがあります。私は見たこの投稿これは本当に役に立ちます。

これを行うと、:w !sudo tee %パスワードを求めるオプション(O)K(L)OAD。これは素晴らしい作品です。ただし:wq !sudo tee %、これを行うとvimエラーが発生します。

E172: Only one file name allowed

なぜafterプロンプトに入ることができないのですかwq?このエラーを理解していません。

ベストアンサー1

なぜなら、と:w:wq異なるオプションを持つ2つの異なるコマンドであるからです。

:w以下は、オプションを含むコマンドの説明です!{cmd}

:[range]w[rite] [++opt] !{cmd}
                    Execute {cmd} with [range] lines as standard input
                    (note the space in front of the '!').  {cmd} is
                    executed like with ":!{cmd}", any '!' is replaced with
                    the previous command |:!|.

:w!とは全く:w !{cmd}異なる2つです。前者の感嘆符は「強制書き込み」を意味し、後者は全文範囲を後続のコマンドに渡すために使用されるパイプ記号です(あなたの場合はteeスーパーユーザーとして実行されます)。 、両方ともファイルをviとして返し、ワイルドカードで表されるファイル名に保存します%

残念ながら、このコマンドにはそのようなオプションはありません:wq。使用可能なこのコマンドの唯一の他の形式は:wq!(ここで感嘆符は他のコマンドにパイプするために使用されず、同様に強制終了するために使用されます:w!)とです:w[!] {file}

おすすめ記事