Команда «да»

В unix / linux yes команда yes которая в принципе бесконечно выводит y на stdout . В чем смысл этого, и как это полезно?

  • Разделение чисел в тех же ячейках между двумя файлами csv-разделенных запятыми
  • Команда «cp» может использоваться только на блочном устройстве?
  • vi - заменить символы из части строки
  • Есть ли способ проверить успешность конкретной команды
  • Как активные вкладки на окнах через терминал? У wmctrl нет опции
  • Как обновить «командный кеш» после смены ссылок?
  • Удалите лишний разрыв строки из переменной
  • Вопрос о зависимостях библиотеки Linux Red Hat
  • 4 Solutions collect form web for “Команда «да»”

    yes может использоваться для отправки утвердительного (или отрицательного, например да) ответа на любую команду, которая в противном случае запрашивала бы ее, заставляя команду работать неинтерактивно.

    Команда yes в сочетании с командой head может использоваться для генерации больших файлов томов для средств тестирования.

    Его также можно использовать для проверки того, насколько хорошо система обрабатывает высокие нагрузки, поскольку использование да приводит к использованию 100% процессоров для систем с одним процессором (для многопроцессорной системы процесс должен выполняться для каждого процессора). Это, например, может быть полезно для изучения того, будет ли система системы охлаждения эффективной, когда процессор работает на 100%.

    В 2006 году команда yes получила гласность за то, что она является средством проверки того, влияет ли на MacBook пользователя синдром прерывистого выключения. Запустив команду yes дважды через терминал в Mac OS X, пользователи смогли максимально вычислить свой компьютер, и, таким образом, посмотреть, был ли отказ связан с теплом

    через wikipedia: http://en.wikipedia.org/wiki/Yes_(Unix)

    Это может быть спорным мнением, но, на мой взгляд, это уродливое исправление для плохого пользовательского интерфейса в инструментах командной строки .

    Некоторые средства командной строки задают вопросы пользователю с подсказкой и не имеют возможности запускать не интерактивно; представьте, например, что-то вроде

     $ frobnicate * frobnicate file a.txt? (y/n) y frobnicate file b.txt? (y/n) y ... 

    Поскольку ответ на вопрос берется из стандартного ввода, быстрым решением этой проблемы является приложение, которое непрерывно выводит строку y\n , что и есть то, что yes . Трубы Unix могут использоваться для отправки этого вывода в качестве ввода данной команды.

     $ yes | frobnicate 

    Одна из проблем с этим подходом заключается в том, что « yes не имеет возможности проверить вопрос, на который он отвечает:

     frobnicate file a.txt? (y/n) y frobnicate file b.txt? (y/n) y format device /dev/sda1? (y/n) y frobnicate file c.txt? (y/n) y 

    Лучшим решением, когда оно доступно, является особый вариант для запуска неинтерактивно, например, rm -f или apt-get -y . Это позволяет кодировать более разумное поведение в приложении.

    Сотрудник использовал это в новом способе ввода пароля

     yes password | passwd 

    Просто натолкнулся на другое использование для этого: понравилось уничтожить жесткий диск с другим шаблоном, чем просто нули (например: dd if = / dev / zero of = / dev / sdd bs = 1M) и использовал для него «да»:

    yes UUUUUUUUUUUUU > /dev/sdd

    Linux и Unix - лучшая ОС в мире.