Yes (Unix)

З Вікіпедыі, свабоднай энцыклапедыі
(Пасля перасылкі з Yes, Unix)

yes — каманда Unix. якая бясконца выводзіць радок «y» альбо свой аргумент у камандны радок.

Апісанне каманды[правіць | правіць зыходнік]

Праграма yes без параметраў выводзіць у камандны радок безліч сімвалаў «y», за кожным з якіх адлюстроўваецца сімвал канца радка. Пры наяўнасці параметраў яна выводзіць іх на экран, таксама дадаючы ў канец сімвал пераносу радка. Так яна працуе, пакуль карыстальнік самастойна не спыніць працэс (напрыклад, камандай kill), альбо не завершыцца праграма, да якой быў перанакіраваны яе выхадны паток.

Выкарыстанне[правіць | правіць зыходнік]

Каманда рэдка выкарыстоўваецца сама па сабе, часцей а ўсё яна аб'ядноўваецца з іншымі (з дапамогай канвеера). Yes можа выкарыстоўвацца ў такіх выпадках:

  • Для станоўчага адказу (альбо адмоўнага, «yes n») на шматлікія паслядоўныя пытанні, напрыклад

$ yes | rm -r ~/.* (тое жа, што і rm -rf ~/.*)

выдаляе ўсе налады карыстальніка.
  • Для шматразовага запуску каманды:

$ yes ls | sh

  • Для запуску іншай праграмы ў неінтэрактыўным рэжыме:

yes | fsck /dev/hda1

запускае fsck для праверкі файлавай сістэмы.
  • Для стварэння вялікіх файлаў з паўтаральнай інфармацыяй (у канвееры з камандай head), напрыклад:

$ yes Wikipedia | head -5000 > wiki.txt

стварае файл wiki.txt з пяццю тысячамі радкоў «Wikipedia» (з сімвалам пераносу радка).
  • Каманда yes часам выкарыстоўваецца з тэставымі мэтамі. Наступны код генерыруе гук з частатой 4 кГц:

$ yes > /dev/dsp

$ yes > /dev/null

Гл. таксама[правіць | правіць зыходнік]

Man-старонка праграмы yes

(англ.)