Просто ищу разницу между 2>&- 2>/dev/null |& &>/dev/null >/dev/null 2>&1 и их портативность с non-Bourne shellsкак tcsh, mkshи
Просто ищу разницу между 2>&- 2>/dev/null |& &>/dev/null >/dev/null 2>&1 и их портативность с non-Bourne shellsкак tcsh, mkshи
Я знаю, что вы можете создать дескриптор файла и перенаправить вывод на него. например exec 3<> /tmp/foo # open fd 3. echo a >&3 # write to it exec 3>&- # close fd 3. Но вы можете сделать то же самое без дескриптора файла: FILE=/tmp/foo echo a > "$FILE" Я ищу хороший пример...
Вчера я прочитал этот комментарий, который говорит, что в оболочке (по крайней мере bash) >&-"имеет тот же результат, что и" >/dev/null. Этот комментарий фактически ссылается на руководство АБС как на источник информации. Но этот источник говорит, что >&-синтаксис «закрывает...
Иногда мне нужно указать «путь-эквивалент» один из стандартных IO потоков ( stdin, stdout, stderr). Так как 99% времени я работаю с Linux, я просто собираюсь /dev/получить /dev/stdinи т. Д., И это « похоже, делает правильно». Но, с одной стороны, мне всегда было неловко по поводу такого обоснования...
$ ls -l /dev/stdin /dev/fd/0 lrwx------ 1 tim tim 64 2011-08-07 09:53 /dev/fd/0 -> /dev/pts/2 lrwxrwxrwx 1 root root 15 2011-08-06 08:14 /dev/stdin -> /proc/self/fd/0 $ ls -l /dev/pts/2 /proc/self/fd/0 crw--w---- 1 tim tty 136, 2 2011-08-07 09:54 /dev/pts/2 lrwx------ 1 tim tim 64 2011-08-07...
Я пытаюсь установить 389-ds, и это дает мне это предупреждение: WARNING: There are only 1024 file descriptors (hard limit) available, which limit the number of simultaneous connections. Я понимаю о файловых дескрипторах, но не понимаю мягких и жестких ограничений. Когда я бегу cat...
Мне очень трудно понять, как использовать файловые дескрипторы в сценариях оболочки. Я знаю основы, такие как exec 5 > /tmp/foo Итак, fd 5 прикреплен к foo для записи. exec 6 < /tmp/bar … для чтения. exec 5>&- … Закрыть фд. Теперь, что это делает? #!/bin/bash exec 5 > /tmp/foo exec...
Я не совсем понимаю, как компьютер читает эту команду. cat file1 file2 1> file.txt 2>&1 Если я понимаю, 2>&1просто перенаправьте стандартную ошибку на стандартный вывод. По этой логике команда выглядит следующим образом: объединить файлы file1и file2. отправить stdoutиз этой...
Скажем, у меня есть процесс 1 и процесс 2 . Оба имеют дескриптор файла, соответствующий целому числу 4. Однако в каждом процессе дескриптор файла 4 указывает на совершенно другой файл в таблице открытых файлов ядра: Как это возможно? Разве файловый дескриптор не должен быть индексом записи в...
Этот ответ на Security StackExchange использует интересный синтаксис bash для генерации файла в строке: openssl req -new -x509 -nodes -newkey ec:<(openssl ecparam -name secp384r1) -keyout cert.key -out cert.crt -days 3650 Этот бит особенно интересен: <(openssl ecparam -name secp384r1)...
От man select int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); nfds - дескриптор файла с наибольшим номером в любом из трех наборов плюс 1. Какова цель nfds, когда у нас уже есть readfds, writefdsи exceptfdsиз которого могут быть определены...
Я бегу в интерактивной сессии Bash. Я создал несколько файловых дескрипторов, используя exec, и я хотел бы перечислить текущий статус моей сессии bash. Есть ли способ вывести список открытых файловых...
Я всегда удивлялся этому, но никогда не занимал время, чтобы выяснить это, поэтому я сделаю это сейчас - насколько мобильно показанное здесь использование того /proc/$$/fd/$Nили другого /dev/fd/$N? Я понимаю гарантии POSIX /dev/null, /dev/tty, and /dev/console (хотя я узнал об этом только на днях...
$ ls -og /proc/self /proc/self/fd lrwxrwxrwx 1 64 Jun 18 11:12 /proc/self -> 32157 /proc/self/fd: total 0 lrwx------ 1 64 Jun 22 2012 0 -> /dev/tty1 lrwx------ 1 64 Jun 22 2012 1 -> /dev/tty1 lrwx------ 1 64 Jun 22 2012 2 -> /dev/tty1 lr-x------ 1 64 Jun 22 2012 3 -> /proc/32157/fd...
Если я это сделаю (в Bourne-подобной оболочке): exec 3> file 4>&3 5> file 6>> file Файловые дескрипторы 3 и 4, так как 4 был dup()отредактирован от 3, имеют одинаковое описание открытого файла (те же свойства, то же смещение внутри файла ...). В то время как файловые дескрипторы...
Я использовал exec 3<>/dev/tcp/192.168.0.101/6435для установления соединения TCP с 192.168.0.101:6435. И я получил, а также отправил несколько сообщений с pipeкомандой. Теперь я хочу разорвать соединение TCP. Но, как ss -anpetя вижу, bash сам удерживает эту связь, не разветвляя дочерний...
Согласно странице руководства bash: Оператор перенаправления [n]<&digit- перемещает дескриптор файла в дескриптор digitфайла nили стандартный ввод (дескриптор файла 0), если nон не указан. digitзакрывается после дублирования на n. Что значит «переместить» дескриптор файла в другой? Каковы...
Я пытаюсь получить полную картину с файловыми дескрипторами. Скажем, у меня есть process1, который изначально имеет следующие файловые дескрипторы _process1_ | | | 0 stdin | | 1 stdout | | 2 stderr | |__________| Затем я закрываю файловый дескриптор 1: close(1); Файловый дескриптор 1 переводит...
На его веб - странице о с трюком собственной трубы , Dan Bernstein объясняет состояние гонки с select()и сигналами, предлагает обходной путь и приходит к выводу , что Конечно, правильно было бы fork()возвращать дескриптор файла, а не идентификатор процесса. Что он подразумевает под этим - это...
Когда вы перенаправляете список команд, который содержит перенаправление exec, exec> / dev / null, похоже, по-прежнему не применяется впоследствии, например, с помощью: { exec >/dev/null; } >/dev/null; echo "Hi" «Привет» печатается. У меня сложилось впечатление, что {}список команд не...