Hogyan tárolhatom a kimenetet a bash változóban, és elnyomhatom a stderr és stdout kimeneteket? [duplicate]

Ennek a kérdésnek már megvannak a válaszai :

Megjegyzések

  • A szerkesztés egy olyan parancscserét mutat, amely csak a parancs szokásos hibafolyamát rögzíti és teljesen elveti a szokásos kimeneti adatfolyamot.
  • A jövőbeni felhasználás céljából " hibát nyomtat " közel sem olyan hasznos, mint valami " ki fogja nyomtatni a hibát Error: you didn't specify -f so I can't furble. " Ne feledje, hogy ' nem láthatjuk, amit láthat, ezért mindent el kell mondania nekünk. A konkrét esetben, ha elmondta nekünk a hibaüzenetet, akkor tanácsot adhatunk Önnek, hogyan kerülje el először annak kiváltását, és nem kell eldobnia.

Válasz

Ha a parancsnak nincs csendes opciója, akkor irányítsa át a hibát a / dev / null fájlba.

oidvalue=$(snmpget -v 2c -c public localhost 1234 2>/dev/null) 

Megjegyzések

  • Köszönöm, de kiderült, hogy amire szükségem volt, valójában valami ilyesmi volt, $ (snmpget -v 2c -c public localhost 1234 2 > & 1 > / dev / null)
  • biztos vagy benne? ez az oidvalue értéket hibaüzenetre állítja, az stdoutot a / dev / null fogja megszívni. 2 > & 1 nincs hatása.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük