Linux echo dev null

Содержание
  1. Операторы перенаправления вывода в Bash: что означает &1 и другие
  2. > /dev/null
  3. >(КОМАНДА) > /dev/null
  4. cat > ФАЙЛ (перенаправление вывода в файл)
  5. > ФАЙЛ > (перенаправление вывода в файл с дописыванием данных) ФАЙЛ Данная конструкция получает многострочный ввод по стандартному вводу и сохраняет его в файл. То есть это аналог в котором просто операторы поменяны местами. Источник Что такое /dev/null и как его использовать в Bash Linux — это интересная операционная система, в которой размещены некоторые виртуальные устройства для различных целей. Для программ, работающих в системе, эти виртуальные устройства действуют так, как будто это реальные файлы. Инструменты могут запрашивать и получать данные из этих источников. Данные генерируются ОС вместо того, чтобы считывать их с диска. Одним из таких примеров является /dev/null . Это специальный файл, который присутствует в каждой системе Linux. Однако, в отличие от большинства других виртуальных файлов, вместо чтения он используется для записи. Все, что вы запишете в /dev/null , будет отброшено, забыто в пустоте. В системе UNIX он известен как нулевое устройство. Зачем вам выбрасывать что-то в пустоту? Давайте посмотрим, что такое /dev/null и как он используется. Предварительно Прежде чем углубиться в использование /dev/null , мы должны иметь четкое представление о потоке данных stdout и stderr . Ознакомьтесь с этим коротким руководством по stdin, stderr и stdout. Давайте сделаем небольшое уточнение. При запуске любой утилиты командной строки она генерирует два вывода. Вывод идет на stdout , а ошибка (если она возникла) — на stderr . По умолчанию оба этих потока данных связаны с терминалом. Например, следующая команда выведет строку, заключенную в двойные кавычки. Здесь вывод сохраняется в stdout . Следующая команда покажет нам статус выхода ранее запущенной команды. Поскольку предыдущая команда была выполнена успешно, статус выхода равен 0. В противном случае статус выхода будет другим. Что произойдет, если вы попытаетесь выполнить недопустимую команду? Теперь нам нужно разобраться в файловом дескрипторе. В экосистеме UNIX это целочисленные значения, присвоенные файлу. И stdout (дескриптор файла = 1), и stderr (дескриптор файла = 2) имеют определенный дескриптор файла. Используя дескриптор файла (1 и 2), мы можем перенаправить stdout и stderr в другие файлы. Для начала, следующий пример перенаправит stdout команды echo в текстовый файл. Здесь мы не указали дескриптор файла. Если он не указан, bash будет использовать stdout по умолчанию. Следующая команда перенаправит stderr в текстовый файл. меню Использование /dev/null Перенаправление вывода в /dev/null Теперь мы готовы узнать, как использовать /dev/null . Сначала давайте проверим, как фильтровать обычный вывод и ошибки. В следующей команде grep попытается найти строку (hello, в данном случае) в каталоге «/sys». Однако это вызовет множество ошибок, поскольку без привилегий root grep не может получить доступ к ряду файлов. В этом случае он выдаст ошибку «Permission denied». Теперь, используя перенаправление, мы можем получить более четкий результат. Вывод выглядит намного лучше, верно? Ничего! В этом случае у grep нет доступа ко многим файлам, а в тех, что есть, нет строки «hello». В следующем примере мы будем пинговать Google. Однако мы не хотим видеть все эти успешные результаты пинга. Вместо этого мы хотим сосредоточиться только на ошибках, когда ping не смог достичь Google. Как нам это сделать? Здесь содержимое stdout сбрасывается в /dev/null , оставляя только ошибки. Перенаправить весь вывод в /dev/null В некоторых ситуациях вывод может оказаться бесполезным. Используя перенаправление, мы можем сбросить весь вывод в пустоту. Давайте немного разобьем эту команду. Сначала мы сбрасываем весь stdout в /dev/null . Затем, во второй части, мы говорим bash отправить stderr в stdout . В этом примере выводить нечего. Однако, если вы запутались, вы всегда можете проверить, успешно ли выполнилась команда. Значение равно 2, потому что команда выдала много ошибок. Если вы склонны забывать файловый дескриптор stdout и stderr, следующая команда подойдет как нельзя лучше. Это более обобщенный формат предыдущей команды. И stdout, и stderr будут перенаправлены в /dev/null. меню Другие примеры Это интересный пример. Знаете инструмент dd ? Это мощный инструмент для преобразования и копирования файлов. Узнайте больше о dd . Используя dd , мы можем проверить скорость последовательного чтения вашего диска. Конечно, это не точное измерение. Однако для быстрого теста это довольно полезно. Здесь я использовал Ubuntu 18.04.4 ISO в качестве большого файла. Аналогичным образом вы также можете проверить скорость загрузки вашего интернет-соединения. Надеемся, у вас есть четкое понимание того, что такое файл /dev/null. Это специальное устройство, которое при записи в него отбрасывает, а при чтении из него считывает null. Истинный потенциал этой интересной возможности заключается в интересных bash-скриптах. Источник BASH Shell Redirect Output and Errors To /dev/null H ow do I redirect output and errors to /dev/null under bash / sh shell scripting? How do I redirect the output of stderr to stdout, and then redirect this combined output to /dev/null device? In Unix, how do I redirect error messages to /dev/null? You can send output to /dev/null, by using command >/dev/null syntax. However, this will not work when command will use the standard error (FD # 2). Tutorial details Difficulty level Easy Root privileges No Requirements bash/ksh Est. reading time 1m So you need to modify >/dev/null as follows to redirect both output and errors to /dev/null. Syntax to redirect error and output messages to /dev/null The syntax discussed below works with Bourne-like shells, such as sh, ksh, and bash: You can also use the same syntax for all your cronjobs to avoid emails and output / error messages: @hourly /scripts/backup/nas.backup >/dev/null 2>&1 OR @hourly /scripts/backup/nas.backup &>/dev/null No ads and tracking In-depth guides for developers and sysadmins at Opensourceflare✨ Join my Patreon to support independent content creators and start reading latest guides: How to set up Redis sentinel cluster on Ubuntu or Debian Linux How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2) How to set up Mariadb Galera cluster on Ubuntu or Debian Linux A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode) How to protect Linux against rogue USB devices using USBGuard Join Patreon ➔ Redirect both standard error and standard out messages to a log file You can always redirect both standard error (stdin) and standard out (stdout) text to an output file or a log file by typing the following command: Want to close stdout and stderr for the command being executed on a Linux/Unix/BSD/OSX bash shell? Try the following syntax: See man pages: ksh(1) 🐧 Get the latest tutorials on Linux, Open Source & DevOps via Category List of Unix and Linux commands Documentation help • mandb • man • pinfo Disk space analyzers df • duf • ncdu • pydf File Management cat • cp • less • mkdir • more • tree Firewall Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 Linux Desktop Apps Skype • Spotify • VLC 3 Modern utilities bat • exa Network Utilities NetHogs • dig • host • ip • nmap OpenVPN CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 Package Manager apk • apt Processes Management bg • chroot • cron • disown • fg • glances • gtop • jobs • killall • kill • pidof • pstree • pwdx • time • vtop Searching ag • grep • whereis • which Shell builtins compgen • echo • printf Text processing cut • rev User Information groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w WireGuard VPN Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 Comments on this entry are closed. Another way to do it: Or you can close stdout and stderr for the command being executed: Remember to add an additional & at the end of the statement to run the command in the background. Thank you Giuseppe for the tip. What do you mean by “close stdout and stderr” ? Thanks! I was searching how resolve this problem, and your solution work perfect for me! need a command in my bash script to remove some (not all) of the contents of directory2. The script does NOT run as root, which works because it removes the correct files but not the root-level stuff in directory2 (that I don’t want to remove). Problem is users get confused by the “permission denied” msgs output by the “rm”. So… I tried to redirect the stderror & stdout to /dev/null this way: rm * /directory1/directory2/ > 2&>1 /dev/null kept changing /dev/null form a special file & other users need crw-rw-rw- Will the recommended approaches allow me to redirect to /dev/null without messing it up for others? You could use find instead to filter out the files you don’t want to delete, or only delete files matching a patter: Delete all files except those with “attachments” in the name: # find . ! -name ‘*attachments*’ -exec rm -v <> \; Delete all files with “attachments” in the name: # find . -name ‘*attachments*’ -exec rm -v <> \; Find is very versitile, it’s pretty cool what you can acheive with find. how does one redirect output from text file processing to a script file that uses the command line variable $1. file iplist has a long list of IP’s on the network and i need to send this to a script that creates a file with the ping info. script says: ping $1 > $1 Please assist if possible How reliable, if that’s the word I’m looking for, is ending a particular command in a script with a redirect like “2>/dev/null” ? What have folks’ experiences been with the different commands and bash/sh versions when trying it this way? I know it’s not recommended, but for someone like myself, with scripts they either run daily or don’t run for months and then go through a spate of executing them two and three times a day (only to go back to seldom running them until the next time it happens), it would be very convenient and not too too anxiety-producing to run a script and know that whatever passable or critical errors it comes up with are being suppressed. I’m much more inclined to put up with circumstances after the fact, and I seldom write anything that’s too destructive (on the system or OS/hardware install and performance level, at any rate) for a little error like Exiv2 complaining about some JPG file’s Photoshop IFD entry being out of bounds. Источник
  6. Что такое /dev/null и как его использовать в Bash
  7. Предварительно
  8. Использование /dev/null
  9. Перенаправление вывода в /dev/null
  10. Перенаправить весь вывод в /dev/null
  11. Другие примеры
  12. BASH Shell Redirect Output and Errors To /dev/null
  13. Syntax to redirect error and output messages to /dev/null
  14. Redirect both standard error and standard out messages to a log file
  15. Want to close stdout and stderr for the command being executed on a Linux/Unix/BSD/OSX bash shell?
Читайте также:  Использование нелицензионного windows ответственность

Операторы перенаправления вывода в Bash: что означает &1 и другие

Рассмотрим операторы перенаправления вывода Bash и похожие по функции операторы и конструкции. Я собрал следующий список, если что-то пропустил, то пишите в комментариях:

Этот оператор на английском называется pipe, и на русском его называют труба или конвейер. Используется очень часто для перенаправления вывода из одной команды в другую, которая может принимать стандартный вывод. Например:

Символ > используется для перенаправления вывода в файл, например:

В этом примере вывод команды ls -l будет записан в файл dir.txt.

То есть оператор | используется когда вывод передаётся в другую команду, а оператор > используется когда вывод записывается в файл.

Ещё один пример использования сразу обоих операторов:

Результат работы этой последовательности команд будет сохранён в файл num.txt.

Если файл не существует, то он будет создан. Если файл существует, то оператор > полностью удалит его содержимое и запишет новым.

> /dev/null

Это частный случай перенаправления, когда всё из стандартного вывода перенаправляется в псевдоустройство /dev/null. Это означает уничтожение данные. То есть ничего не будет выводиться в стандартный вывод.

Функция оператора >> похожа на > с тем отличием, что оператор >> не удаляет содержимое файла, а дописывает новые данные к уже существующим.

Если файл не существует, то оператор >> создаст его и запишет в него переданные данные.

Оператор 2> перенаправляет стандартный вывод ошибок — standard error (stderr).

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

К примеру попытаемся сохранить в файл текст ошибки, возникшей в результате выполнения команды:

Текст ошибки будет выведен на экран, но файл ls-error.txt окажется пустым.

Дело в том, что нужно различать стандартный вывод и стандартный вывод ошибок. Чтобы перенаправить стандартный вывод в файл используется оператор 2>:

В данном случае ошибка не будет выведена на экран, а будет сохранена в файл ls-error.txt.

Чтобы перенаправить стандартную ошибку, мы должны обратиться к её файловому дескриптору. Программа может выводить любой из нескольких пронумерованных файловых потоков. Первые три из этих файловых потоков называются стандартный ввод, стандартный вывод и стандартный вывод ошибок. Оболочка ссылается на них внутренне как файловые дескрипторы 0, 1 и 2 соответственно. Оболочка обеспечивает запись для перенаправления файлов с использованием номера дескриптора файла. Поскольку стандартная ошибка совпадает с дескриптором файла номер 2, мы можем перенаправить стандартную ошибку с помощью 2>.

Файловый дескриптор «2» помещается непосредственно перед оператором перенаправления, чтобы выполнить перенаправление стандартной ошибки в файл ls-error.txt.

Читайте также:  Драйвер для linux звук

Конструкция 2>&1 предназначена для перенаправления стандартного вывода и стандартного вывода ошибок в один файл.

В некоторых случаях мы можем захотеть записать весь вывод команды в один файл. Чтобы сделать это, мы должны одновременно перенаправить как стандартный вывод, так и стандартный вывод ошибок. Есть два способа сделать это. Во-первых, традиционный способ, который работает со старыми версиями оболочки:

Используя этот метод, мы выполняем два перенаправления. Сначала мы перенаправляем стандартный вывод в файл ls-output.txt, а затем перенаправляем дескриптор файла 2 (стандартная вывод ошибок) на дескриптор файла один (стандартный вывод), используя обозначения 2>&1.

Обратите внимание, что порядок перенаправлений является значимым. Перенаправление стандартной ошибки всегда должно происходить после перенаправления стандартного вывода, иначе оно не работает. В приведённом выше примере

перенаправляет стандартную ошибку в файл ls-output.txt, но при изменении порядка на

стандартная ошибка направлена на экран.

Последние версии bash предоставляют второй, более упрощённый метод для выполнения комбинированного перенаправления 2>&1:

В этом примере мы используем одинарную запись &> для перенаправления как стандартного вывода, так и стандартной ошибки в файл ls-output.txt.

Вы также можете добавить стандартные выходные данные и стандартные потоки ошибок в один файл, например так:

Итак, &> является аналогом 2>&1, а &>> это то же самое, но с перенаправлением вывода в файл.

Это ещё одна форма «подстановки процессов» (Process Substitution):

Если используется эта форма, то вместо записи в файл, данные будут переданы на ввод для КОМАНДЫ.

>(КОМАНДА) > /dev/null

Эка комбинация, включающая в себя 3 уже рассмотренных элемента:

  • 2> означает перенаправление стандартного вывода ошибок (stderr)
  • >(КОМАНДА) означает подстановку процессов, в результате стандартный вывод ошибок будет передан для обработки в КОМАНДУ
  • > /dev/null означает перенаправления стандартного вывода в /dev/null, то есть фактическое уничтожение стандартного вывода

Пример практического использования:

HTTP заголовки команда cURL выводит в stderr, а команда grep не ищет по stderr. Но если мы хотим искать только по HTTP заголовков (игнорируя HTML код), то мы не может сделать просто перенаправление stderr для слияния со стандартным выводом, то есть не можем 2>&1, поскольку текст страницы может содержать фразу «401 Unauthorized» и мы получим ложное срабатывание. Поэтому мы используем указанную выше конструкцию — стандартный вывод ошибок обрабатывается, стандартный вывод уничтожается.

cat > ФАЙЛ (перенаправление вывода в файл)
  • > ФАЙЛ > (перенаправление вывода в файл с дописыванием данных)
  • ФАЙЛ
  • Данная конструкция получает многострочный ввод по стандартному вводу и сохраняет его в файл. То есть это аналог

    в котором просто операторы поменяны местами.

    Источник

    Что такое /dev/null и как его использовать в Bash

    Linux — это интересная операционная система, в которой размещены некоторые виртуальные устройства для различных целей. Для программ, работающих в системе, эти виртуальные устройства действуют так, как будто это реальные файлы. Инструменты могут запрашивать и получать данные из этих источников. Данные генерируются ОС вместо того, чтобы считывать их с диска.

    Одним из таких примеров является /dev/null . Это специальный файл, который присутствует в каждой системе Linux. Однако, в отличие от большинства других виртуальных файлов, вместо чтения он используется для записи. Все, что вы запишете в /dev/null , будет отброшено, забыто в пустоте. В системе UNIX он известен как нулевое устройство.

    Зачем вам выбрасывать что-то в пустоту? Давайте посмотрим, что такое /dev/null и как он используется.

    Предварительно

    Прежде чем углубиться в использование /dev/null , мы должны иметь четкое представление о потоке данных stdout и stderr . Ознакомьтесь с этим коротким руководством по stdin, stderr и stdout.

    Давайте сделаем небольшое уточнение. При запуске любой утилиты командной строки она генерирует два вывода. Вывод идет на stdout , а ошибка (если она возникла) — на stderr . По умолчанию оба этих потока данных связаны с терминалом.

    Например, следующая команда выведет строку, заключенную в двойные кавычки. Здесь вывод сохраняется в stdout .

    Следующая команда покажет нам статус выхода ранее запущенной команды.

    Поскольку предыдущая команда была выполнена успешно, статус выхода равен 0. В противном случае статус выхода будет другим. Что произойдет, если вы попытаетесь выполнить недопустимую команду?

    Теперь нам нужно разобраться в файловом дескрипторе. В экосистеме UNIX это целочисленные значения, присвоенные файлу. И stdout (дескриптор файла = 1), и stderr (дескриптор файла = 2) имеют определенный дескриптор файла. Используя дескриптор файла (1 и 2), мы можем перенаправить stdout и stderr в другие файлы.

    Для начала, следующий пример перенаправит stdout команды echo в текстовый файл. Здесь мы не указали дескриптор файла. Если он не указан, bash будет использовать stdout по умолчанию.

    Следующая команда перенаправит stderr в текстовый файл.

    меню

    Использование /dev/null

    Перенаправление вывода в /dev/null

    Теперь мы готовы узнать, как использовать /dev/null . Сначала давайте проверим, как фильтровать обычный вывод и ошибки. В следующей команде grep попытается найти строку (hello, в данном случае) в каталоге «/sys».

    Однако это вызовет множество ошибок, поскольку без привилегий root grep не может получить доступ к ряду файлов. В этом случае он выдаст ошибку «Permission denied». Теперь, используя перенаправление, мы можем получить более четкий результат.

    Вывод выглядит намного лучше, верно? Ничего! В этом случае у grep нет доступа ко многим файлам, а в тех, что есть, нет строки «hello».

    В следующем примере мы будем пинговать Google.

    Однако мы не хотим видеть все эти успешные результаты пинга. Вместо этого мы хотим сосредоточиться только на ошибках, когда ping не смог достичь Google. Как нам это сделать?

    Здесь содержимое stdout сбрасывается в /dev/null , оставляя только ошибки.

    Перенаправить весь вывод в /dev/null

    В некоторых ситуациях вывод может оказаться бесполезным. Используя перенаправление, мы можем сбросить весь вывод в пустоту.

    Давайте немного разобьем эту команду. Сначала мы сбрасываем весь stdout в /dev/null . Затем, во второй части, мы говорим bash отправить stderr в stdout . В этом примере выводить нечего. Однако, если вы запутались, вы всегда можете проверить, успешно ли выполнилась команда.

    Значение равно 2, потому что команда выдала много ошибок.

    Если вы склонны забывать файловый дескриптор stdout и stderr, следующая команда подойдет как нельзя лучше. Это более обобщенный формат предыдущей команды. И stdout, и stderr будут перенаправлены в /dev/null.

    меню

    Другие примеры

    Это интересный пример. Знаете инструмент dd ? Это мощный инструмент для преобразования и копирования файлов. Узнайте больше о dd . Используя dd , мы можем проверить скорость последовательного чтения вашего диска. Конечно, это не точное измерение. Однако для быстрого теста это довольно полезно.

    Здесь я использовал Ubuntu 18.04.4 ISO в качестве большого файла.

    Аналогичным образом вы также можете проверить скорость загрузки вашего интернет-соединения.

    Надеемся, у вас есть четкое понимание того, что такое файл /dev/null. Это специальное устройство, которое при записи в него отбрасывает, а при чтении из него считывает null. Истинный потенциал этой интересной возможности заключается в интересных bash-скриптах.

    Источник

    BASH Shell Redirect Output and Errors To /dev/null

    H ow do I redirect output and errors to /dev/null under bash / sh shell scripting? How do I redirect the output of stderr to stdout, and then redirect this combined output to /dev/null device? In Unix, how do I redirect error messages to /dev/null?

    You can send output to /dev/null, by using command >/dev/null syntax. However, this will not work when command will use the standard error (FD # 2).

    Tutorial details
    Difficulty level Easy
    Root privileges No
    Requirements bash/ksh
    Est. reading time 1m

    So you need to modify >/dev/null as follows to redirect both output and errors to /dev/null.

    Syntax to redirect error and output messages to /dev/null

    The syntax discussed below works with Bourne-like shells, such as sh, ksh, and bash:

    You can also use the same syntax for all your cronjobs to avoid emails and output / error messages:
    @hourly /scripts/backup/nas.backup >/dev/null 2>&1
    OR
    @hourly /scripts/backup/nas.backup &>/dev/null

    • No ads and tracking
    • In-depth guides for developers and sysadmins at Opensourceflare✨
    • Join my Patreon to support independent content creators and start reading latest guides:
      • How to set up Redis sentinel cluster on Ubuntu or Debian Linux
      • How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
      • How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
      • A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
      • How to protect Linux against rogue USB devices using USBGuard

    Join Patreon

    Redirect both standard error and standard out messages to a log file

    You can always redirect both standard error (stdin) and standard out (stdout) text to an output file or a log file by typing the following command:

    Want to close stdout and stderr for the command being executed on a Linux/Unix/BSD/OSX bash shell?

    Try the following syntax:

    See man pages: ksh(1)

    🐧 Get the latest tutorials on Linux, Open Source & DevOps via

    Category List of Unix and Linux commands
    Documentation help • mandb • man • pinfo
    Disk space analyzers df • duf • ncdu • pydf
    File Management cat • cp • less • mkdir • more • tree
    Firewall Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04
    Linux Desktop Apps Skype • Spotify • VLC 3
    Modern utilities bat • exa
    Network Utilities NetHogs • dig • host • ip • nmap
    OpenVPN CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04
    Package Manager apk • apt
    Processes Management bg • chroot • cron • disown • fg • glances • gtop • jobs • killall • kill • pidof • pstree • pwdx • time • vtop
    Searching ag • grep • whereis • which
    Shell builtins compgen • echo • printf
    Text processing cut • rev
    User Information groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w
    WireGuard VPN Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04

    Comments on this entry are closed.

    Another way to do it:

    Or you can close stdout and stderr for the command being executed:

    Remember to add an additional & at the end of the statement to run the command in the background. Thank you Giuseppe for the tip.

    What do you mean by “close stdout and stderr” ?

    Thanks! I was searching how resolve this problem, and your solution work perfect for me!

    need a command in my bash script to remove some (not all) of the contents of directory2.
    The script does NOT run as root, which works because it removes the correct files but not the root-level stuff in directory2 (that I don’t want to remove).
    Problem is users get confused by the “permission denied” msgs output by the “rm”. So…
    I tried to redirect the stderror & stdout to /dev/null this way:
    rm * /directory1/directory2/ > 2&>1 /dev/null
    kept changing /dev/null form a special file & other users need crw-rw-rw-
    Will the recommended approaches allow me to redirect to /dev/null without messing it up for others?

    You could use find instead to filter out the files you don’t want to delete, or only delete files matching a patter:

    Delete all files except those with “attachments” in the name:
    # find . ! -name ‘*attachments*’ -exec rm -v <> \;

    Delete all files with “attachments” in the name:
    # find . -name ‘*attachments*’ -exec rm -v <> \;

    Find is very versitile, it’s pretty cool what you can acheive with find.

    how does one redirect output from text file processing to a script file that uses the command line variable $1.

    file iplist has a long list of IP’s on the network and i need to send this to a script that creates a file with the ping info.

    script says: ping $1 > $1
    Please assist if possible

    How reliable, if that’s the word I’m looking for, is ending a particular command in a script with a redirect like “2>/dev/null” ? What have folks’ experiences been with the different commands and bash/sh versions when trying it this way?

    I know it’s not recommended, but for someone like myself, with scripts they either run daily or don’t run for months and then go through a spate of executing them two and three times a day (only to go back to seldom running them until the next time it happens), it would be very convenient and not too too anxiety-producing to run a script and know that whatever passable or critical errors it comes up with are being suppressed.

    I’m much more inclined to put up with circumstances after the fact, and I seldom write anything that’s too destructive (on the system or OS/hardware install and performance level, at any rate) for a little error like Exiv2 complaining about some JPG file’s Photoshop IFD entry being out of bounds.

    Источник

    Оцените статью