Go では、os.Stdin を使用して元の標準入力から読み取ると、次のとおり望ましい結果が得られます。このコード スニペットによって:
package main import "os" import "log" import "io" func main() { bytes, err := io.ReadAll(os.Stdin) log.Println(err, string(bytes)) }
echo test stdin を実行するとき | stdin.go を実行すると、プログラムは問題なくテスト stdin を出力するはずです。
エラーが発生した場合は、使用したコードを提供すると、問題の特定に非常に役立ちます。
行ベースの処理の場合入力では、bufio.Scanner:
import "os" import "log" import "bufio" func main() { s := bufio.NewScanner(os.Stdin) for s.Scan() { log.Println("line", s.Text()) } }
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3