Как выполнить команду watch на выражение с помощью труб?

Сегодня я узнал замечательную команду shuf:

ls | shuf 

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

Поэтому я подумал, почему бы не повторять это выражение каждую секунду заново, и поэтому я попробовал

 watch -n1 ls | shuf (and got no output) watch -n1 (ls | shuf) (and got an error) watch -n1 {ls | shuf} (and got an error) 

то я положил ls | shuf в свой собственный файл и сделал из него скрипт foo.

 watch -n1 ./foo (this times it worked) 

Можно ли применить команду watch к командному выражению команды без выражения в файл сценария?

One Solution collect form web for “Как выполнить команду watch на выражение с помощью труб?”

Существует несколько вариантов команды watch, некоторые из которых порождают оболочку для интерпретации командной строки, состоящей из конкатенации аргументов, передаваемых для watch (с пробелами между ними). В тех, которые вы можете сделать:

 watch 'ls | shuf' 

такой же как:

 watch ls '|' shuf 

(эти watch фактически запускаются: "/bin/sh", ["sh", "-c", "ls | shuf"] и весьма опасны тем, что второй уровень интерпретации может открыть дверь для ошибок и проблем безопасности, когда не ожидаемый, часы procps-ng могут избежать этого поведения с опцией -x ).

И есть те, которые просто выполняют команду, имя которой задано в первом аргументе со всеми аргументами в качестве аргументов. В тех:

 watch sh -c 'ls | shuf' 
  • Что означает различие с фигурными фигурными скобками?
  • как я могу выполнить вычисление чисел из текстового файла в сценарии оболочки
  • Как изменить целевой каталог для завершения табуляции?
  • Сценарий оболочки говорит о том, когда нужно выполнить в следующий раз
  • Запуск команды в новом окне терминала через Python
  • Как найти частоту появления строк, содержащихся в файле?
  • Bash заменить символы на выходе
  • Как автоматически подать два аргумента в программу после запуска?
  • Передавать аргументы команде, запущенной другим пользователем
  • Как запустить скрипт bash из сценария sh (dash)?
  • Как передавать данные из одной команды в другую команду, которая разрешает только файл в качестве аргумента?
  • Interesting Posts

    Может ping Debian VM через IP, но не через имя хоста

    Переформатирование большого количества XML-файлов

    Создайте список замещения процесса для tee

    новый диск в Vm показывает как ata2

    Не удалось запустить tomcat6, но статус службы запущен

    Использование диалога открытия файла в gEdit с использованием только клавиатуры

    Установка Dovecot и Exim на CentOS 6.4

    Ошибка Ubuntu unzip: ошибка sysmalloc не выполнена

    Отказ ssh: как устранить неполадки?

    Удаление файлов резервных копий в соответствии с правилами

    Является ли /var/crash/.lock безопасным для удаления или его следует сохранить?

    автоматически запускать автоматический проходной туннель при появлении сети

    Как сделать снимок снимка btrfs доступным для записи?

    Замените строку в столбце файла CSV другой строкой с одной цитатой

    Как перенести файл и изменить его имя без повторного ввода имени и просто добавить новые символы

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