Mitä tämän komennon 2 > & 1 tarkoittaa? [kaksoiskappale]

Tähän kysymykseen on jo annettu vastauksia :

Kommentit

vastaus

2 viittaa prosessin toiseen tiedostokuvaajaan, ts. stderr.

> tarkoittaa uudelleenohjausta.

&1 tarkoittaa, että uudelleenohjauksen kohteen tulisi olla sama kuin ensimmäisen tiedoston descriptor, eli stdout.

Joten > /dev/null 2>&1 ohjaa ensin stdout kohtaan ja ohjaa sitten stderr myös sinne. Tämä hiljentää kaikki wget -komennon kaikki lähdöt (tavalliset tai virheelliset).

:: edit :: Tässä on erinomainen pikaviite sinulle.

Kommentit

  • Kiitos. Kun suoritetaan jaetussa hosting-cron-työssä, joka yleensä lähettää lähdön sähköpostin järjestelmänvalvojalle, voisiko > / dev / null 2 > & 1 estävät tätä tapahtumasta luuletko? Onko ' > ' ympäröivillä välilyönneillä merkitystä?
  • Kyllä , täydellinen äänenvaimennustemppu on vakiokäytäntö sen varmistamiseksi, ettei ole mitään lähdettä sähköpostin käynnistämiseen cron-työstä. (Huomaa kuitenkin, että isännöintipalvelun tarjoaja on saattanut tehdä kaikenlaisia outoja asioita cron-ympäristöllesi saadakseen sen lähettämään jonkinlaisen sähköpostin ponnisteluistasi huolimatta.) :: edit :: Ja ei, välilyönnit yksinäisen > ei ole väliä, mutta välilyönteillä 2>&1 on todennäköisesti merkitystä (en voi ' muistaa) .
  • Saattaa myös olla huomionarvoista, että sama semantiikka saavutetaan usein idiomilla &>/dev/null

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *