ホームページ  >  記事  >  バックエンド開発  >  exec.Command を使用して gofmt -r を実行しようとすると、「ルーン テキストが終了していません」エラーが発生する

exec.Command を使用して gofmt -r を実行しようとすると、「ルーン テキストが終了していません」エラーが発生する

WBOY
WBOY転載
2024-02-11 18:10:07662ブラウズ

尝试使用 exec.Command 运行 gofmt -r 时出现“符文文字未终止”错误

php 編集者の Youzi は、exec.Command を使用して gofmt -r を実行したときに、「ルーン テキストが終了していません」というエラーが発生しました。このエラーは、コマンド内のシンボルが正しく終了しないことが原因である可能性があります。この問題を解決するには、コマンド内のシンボルが正しくペアになっているかどうかを確認し、各シンボルに正しいターミネータがあることを確認します。また、エスケープ文字を使用して、特殊記号を含むコマンドを処理してみてください。これらの方法が、同じ問題に遭遇した開発者に役立つことを願っています。

質問内容

以下のディレクトリ構成内で、

リーリー

単純な型定義を持つ foo.go があります:

リーリー

コマンドラインから ngofmt -r を実行して変数名を置き換えると、うまくいきます。

リーリー

しかし、プログラムを使用して main.go

からこれを実行しようとすると、 リーリー

エラーが表示されます:

リーリー

何が原因か知っていますか?

回避策

exec.command の引数を引用符で囲む必要はありません。引用符はシェルの機能であり、システム コールを行うときには適用されません。シェルでは引用符でパラメータを記述するため、これも必要ありませんが、exec.command ではパラメータは関数呼び出しのパラメータに分割されます。

###特定の:### リーリー

そうあるべきです

リーリー

以上がexec.Command を使用して gofmt -r を実行しようとすると、「ルーン テキストが終了していません」エラーが発生するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。