Golang, mit jelent ez a sor?
cmd := exec.Command("cmd", "/c", "cls")
cmd.Stdout = os.Stdout
cmd.Run()
Ez a 3 sorom van. Az első oké, a cmd nevű változóként nevezi meg a *valamilyen* parancs lefutását, a Run pedig értelemszerűen lefuttatja azt. A második sor mi lenne, miért van rá szükség?
Az első sor egy futtatható állomány megnevezése, jelen esetben a cmd-é, ami a parancssor hivatalos neve. A /c és a cls a paraméterek, amiket ad neki.
Vagyis ez elindít egy parancssort, a cls az leüríti a teljes képernyőjét, a /c pedig annyit tesz, hogy ha végzett, bezárja.
A run az jól látod, hogy elindítja.
A középső sor pedig annyi, hogy a megadott program sztandard kimenete (amit általában konzolos futtatásnál látunk) az megyegyezik az operációs rendszer sztandard kimenetével.
Ezt amúgy úgy mondtam meg, hogy életemben nem láttam golang-ot.
Az első sorban
megadod a futtatni kívánt program nevét (cmd) és argumentumait (/c cls) és visszakapsz egy Cmd struktúrát:
A cmd parancs:
nyit egy új parancsértelmezőt, a /c kapcsolója meg lefuttatja az utána szereplő parancsot - jelen esetben egy képernyőtőrlést:
A második sorban az előbb említett Cmd struktúra Stdout paraméterét (ami a parancs kimenetét határozza meg) beállítod a rendszer sztenderd kimenetére:
A harmadiik sor meg futtatja az első sorban megadott programot:
[link] .Run
#1 én pedig úgy tettem fel a kérdést, hogy 1 hete láttam legelőször programkódot :D Köszi!
#2 Köszi neked is! Akkor a második sort is muszáj megadni, anélkül nem működik, igaz? Valamint egyetlen sorban nem megoldható a kivitelezés?
"Akkor a második sort is muszáj megadni, anélkül nem működik, igaz?"
Ha jól értelmezem a Golang leírását:
"Stdout and Stderr specify the process's standard output and error.
If either is nil, Run connects the corresponding file descriptor
to the null device (os.DevNull)."
akkor alapértelmezetten egy számítógépes "virtuális fekete lyukba" ( [link] ) irányítódik a kimenet - ezen segít a második sor.
További kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!