Шта је / дев / нулл и како вам може помоћи?

Ако већ имамо неке појмове стабла директоријума ГНУ / Линук, требало би да смо барем упознати са / дев / референцом, која је у ствари тамо где су све датотеке повезане са хардверских уређаја.

Ако погледамо у директоријум / дев / видећемо „датотеку“ која се зове нула, али ако желимо да га отворимо да бисмо видели његов садржај, систем ће нам рећи да то није могуће, јер то није обичан садржај. Приложио сам реч датотека јер, као што сви знате за Линук, све (хардвер и софтвер) је представљено као датотека.

Ово је допринос Даниела Дурантеа, постајући тако један од победника нашег недељног такмичења: «Поделите шта знате о Линуку«. Честитамо Данијеле!

Којем уређају одговара / дев / нулл?

Из практичних разлога замислите канту за смеће, јаму без дна или свемир у који можете бацити било шта без могућности да се то опорави (без обзира на то колико се НАСА момци труде).

Али ако већ имам наредбе попут рм, зашто желим да се нешто ново избрише?

Јер начин на који функционишу обе „црне рупе“ је потпуно различит: како бисте заменили стандардни излаз грешке у наредби унутар скрипте љуске током извршавања? Овде долази / дев / нулл.

Да видимо на примеру.

Направили смо датотеку под називом тестови која садржи низ „Хелло Ворлд“. Ако желимо да представимо садржај те датотеке у командној линији, могли бисмо то учинити на следећи начин:

усер @ лаптоп: ~ $ мачји тест
Здраво Свете

Ако датотека не постоји или је именована као тестови (са знаком 'на крају), у конзоли бисмо добили следећу грешку:

усер @ лаптоп: ~ $ мачји тестови
мачка: тестови: Датотека или директоријум не постоје

Шта бисмо могли учинити да избегнемо поруку о грешци? Па, једноставно преусмерите излаз наредбе, у случају грешке, на "канту за смеће", то јест на / дев / нулл

Како да одредимо да буде у случају грешке? Овде уносите стандардне вредности улаза, излаза и грешака за програм: СТДИН, СТДОУТ и СТДЕРР (који могу бити замењени са 0, 1 и 2). На овај начин, ако ставимо ...

усер @ лаптоп: ~ $ мачка тестира 2> / дев / нулл
корисник @ лаптоп: ~ $

... Видећемо да се порука о грешци неће појавити на конзоли.

Морате бити опрезни јер је синтакса од суштинске важности: између знакова 2 и> не сме бити размака. У супротном, дало би следеће:

усер @ лаптоп: ~ $ мачка тестира 2> / дев / нулл
мачка: тестови: Датотека или директоријум не постоје
мачка: 2: Датотека или директоријум не постоје

Супротно томе, размак између> и / дев / нулл неће негативно утицати на резултат.

Такође бисмо могли да користимо преусмеравање грешака, на пример, за хватање грешака у датотеку дневника на следећи начин:

усер @ лаптоп: ~ $ мачка тестира 2> ерр.лог

Још један занимљив случај било би прикупљање резултата у другој датотеци све док се не догоди грешка, за коју бисмо ставили:

усер @ лаптоп: ~ $ мачка тест 1> оутпут_ресулт 2> ерр.лог

На крају, вреди ставити израз «> / дев / нулл 2> & 1» у којем се комбинују стандардни излаз и излаз грешке, преусмеравајући их тако да се ни у ком случају не добијају излазне информације.


Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. За податке одговоран: Мигуел Ангел Гатон
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.

  1.   Гуидо Игнацио Игнацио дијо

    Ах, али недостаје један од најчешће коришћених услужних програма који има / дев / нулл, а то је пражњење датотека: $ цат / дев / нулл> филе.лог На овај начин датотека филе.лог ће бити празна. Додајте га!

    1.    Едуардо Х. дијо

      Управо је објашњење тражио.
      Подржавам предлог за додавање =)

      САЛУДОС!

  2.   Пабло дијо

    Здраво, пре свега чланак је врло добар! други бих желео да нешто допринесем са овом везом на ту тему црон посао у пхп-у са Цпанела и трећа честитка за блог!

  3.   Пабло дијо

    Добар чланак о дев / нулл, штета што мислим да сам раније погрешно коментарисао на погрешном месту! Ја се извињавам

  4.   анониман дијо

    хвала ти добар допринос

  5.   Јерс дијо

    Поздрав, добијам нулти напад. Користим андрирц и од свог надимка добијам привате са речју Нулл. Две секунде касније програм се затвара. Читао сам и према ономе што видим ово може да уради само Схелл, а не неко спољашњи. Покушао сам да се игноришем / игноришем -лрпцнтикд и ништа ме не изненађује, наредба стално долази. Ако имате било који начин да покушате да га блокирате, био бих вам захвалан. Живели

  6.   Софиа мартинез дијо

    Шта се догађа ако се приликом извршавања реченице симбол> не постави?

    Може ли ме неко упутити, молим вас?

  7.   Нула дијо

    Добро јутро, инсталирао сам Дебиан нетинст у АЦЕР Ектенса 5620З – 32 бит. Када се инсталација са УСБ-а заврши и флеш драјв се уклони тако да се покреће са хард диска (немојте поново инсталирати са оловке) већ у тренутку покретања систем она ме пита:
    дебиан пријава: кккккккк (ок)
    Лозинка: кккккккк (ок)
    нил@дебиан:~$ ???? шта је ово? Шта да ставим тамо?

    Без ове команде не могу да наставим са покретањем система.
    Да ли ми можеш помоћи? Не знам како да наставим.
    Много вам хвала. Срдачан поздрав.