Co znamená 2 > & 1 v tomto příkazu? [duplicate]

Tato otázka již má odpovědi zde :

Komentáře

odpověď

2 odkazuje na druhý deskriptor souboru procesu, tj. stderr.

> znamená přesměrování.

&1 znamená, že cíl přesměrování by měl být na stejném místě jako první soubor deskriptor, tj. stdout.

Takže > /dev/null 2>&1 nejprve přesměruje stdout do a poté také přesměruje stderr. Tím se efektivně umlčí veškerý výstup (normální nebo chybový) z příkazu wget.

:: edit :: Zde je pro vás vynikající rychlá reference.

Komentáře

  • Děkujeme. Při spuštění ve sdílené úloze hostitele cron, která obvykle odesílá e-mail s výstupem správci, by > / dev / null 2 > & 1 zabránit tomu, aby se to stalo, myslíte? Záleží také na prostorech kolem ' > '?
  • Ano , kompletní trik umlčování je standardní praxí, aby se zajistilo, že neexistuje absolutně žádný výstup pro spuštění e-mailu z úlohy cron. (Všimněte si však, že poskytovatel hostingu mohl ve vašem prostředí cron udělat nejrůznější podivné věci, aby odeslal nějaký e-mail bez ohledu na vaše úsilí.) :: edit :: A ne, mezery kolem osamělého > na tom nezáleží, ale na mezerách v 2>&1 pravděpodobně záleží (nemohu si ' vzpomenout) .
  • Za zmínku také stojí, že stejné sémantiky se často dosahuje u idiomu &>/dev/null

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *