Apenas procurando a diferença entre 2>&- 2>/dev/null |& &>/dev/null >/dev/null 2>&1 e sua portabilidade com non-Bourne shellscomo tcsh, mksh,
Apenas procurando a diferença entre 2>&- 2>/dev/null |& &>/dev/null >/dev/null 2>&1 e sua portabilidade com non-Bourne shellscomo tcsh, mksh,
Eu sei que você pode criar um descritor de arquivo e redirecionar a saída para ele. por exemplo exec 3<> /tmp/foo # open fd 3. echo a >&3 # write to it exec 3>&- # close fd 3. Mas você pode fazer o mesmo sem o descritor de arquivo: FILE=/tmp/foo echo a > "$FILE" Estou...
Ontem li este comentário do SO, que diz que no shell (pelo menos bash) >&-"tem o mesmo resultado que" >/dev/null. Na verdade, esse comentário se refere ao guia do ABS como a fonte de suas informações. Mas essa fonte diz que a >&-sintaxe "fecha os descritores de arquivo". Não está...
Ocasionalmente eu preciso especificar um "caminho-equivalente" de um dos IO padrão córregos ( stdin, stdout, stderr). Desde 99% do tempo em que trabalho com Linux, prefiro /dev/obter /dev/stdin, etc., e isso " parece fazer a coisa certa". Mas, por um lado, sempre me senti desconfortável com essa...
$ 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...
Estou tentando instalar 389-ds, e isso me dá este aviso: WARNING: There are only 1024 file descriptors (hard limit) available, which limit the number of simultaneous connections. Entendo sobre descritores de arquivos, mas não entendo sobre limites flexíveis e flexíveis. Quando corro cat...
Estou com muita dificuldade para entender como usar descritores de arquivo em scripts de shell. Eu sei o básico, como exec 5 > /tmp/foo Então o fd 5 é anexado ao foo para escrever. exec 6 < /tmp/bar … para ler. exec 5>&- ... fechar fd. Agora, o que isso faz? #!/bin/bash exec...
Não entendo como o computador lê esse comando. cat file1 file2 1> file.txt 2>&1 Se eu entendi, 2>&1simplesmente redirecione o Erro Padrão para a Saída Padrão. Por essa lógica, o comando lê para mim da seguinte maneira: concatenar arquivos file1e file2. envie stdoutdesta...
Digamos que eu tenho o processo 1 e o processo 2 . Ambos têm um descritor de arquivo correspondente ao número inteiro 4. Em cada processo, no entanto, o descritor de arquivo 4 aponta para um arquivo totalmente diferente na Tabela de Arquivos Abertos do kernel: Como isso é possível? Um descritor...
Esta resposta no Security StackExchange usa uma sintaxe interessante do bash para gerar um arquivo em linha: openssl req -new -x509 -nodes -newkey ec:<(openssl ecparam -name secp384r1) -keyout cert.key -out cert.crt -days 3650 Este bit é particularmente interessante: <(openssl ecparam...
A partir de man select int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); nfds é o descritor de arquivo com o número mais alto em qualquer um dos três conjuntos, mais 1. Qual é o objetivo nfds, quando já temos readfds, writefdse a...
Estou executando uma sessão interativa do bash. Eu criei alguns descritores de arquivo, usando exec, e gostaria de listar qual é o status atual da minha sessão do bash. Existe uma maneira de listar os descritores de arquivos abertos no
Eu sempre me perguntei isso, mas nunca tirei um tempo para descobrir, então o farei agora - quão portátil é o uso mostrado aqui de um /proc/$$/fd/$Nou outro /dev/fd/$N? Entendo as garantias POSIX /dev/null, /dev/tty, and /dev/console (embora eu tenha descoberto isso no outro dia depois de ler os...
$ 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 ->...
Se eu fizer (em um shell tipo Bourne): exec 3> file 4>&3 5> file 6>> file Os descritores de arquivo 3 e 4, desde que 4 foi dup()editado a partir de 3, compartilham a mesma descrição de arquivo aberto (mesmas propriedades, o mesmo deslocamento dentro do arquivo ...). Embora os...
Eu usei exec 3<>/dev/tcp/192.168.0.101/6435para estabelecer uma conexão TCP com 192.168.0.101:6435. E recebi e enviei algumas mensagens com o pipecomando Agora, desejo encerrar a conexão TCP. Mas, com ss -anpetposso ver que o próprio bash mantém essa conexão, sem bifurcar um processo...
Em sua página da web sobre o truque do autoduto , Dan Bernstein explica uma condição de corrida com select()e sinaliza, oferece uma solução alternativa e conclui que Obviamente, a coisa certa seria fork()retornar um descritor de arquivo, não um ID do processo. O que ele quer dizer com isso - é...
De acordo com a página de manual do bash: O operador de redirecionamento [n]<&digit- move o descritor digitde arquivo para o descritor de arquivo nou a entrada padrão (descritor de arquivo 0) se nnão for especificado. digité fechado depois de duplicado para n. O que significa...
Estou tentando obter uma imagem completa com descritores de arquivo. Digamos que eu possua process1, que inicialmente possui esses descritores de arquivo: _process1_ | | | 0 stdin | | 1 stdout | | 2 stderr | |__________| Então eu fecho o descritor de arquivo 1: close(1); O descritor de...
Quando você redireciona uma lista de comandos que contém um redirecionamento de exec, o exec> / dev / null ainda não parece ser aplicado posteriormente, como por exemplo: { exec >/dev/null; } >/dev/null; echo "Hi" "Oi" é impresso. Fiquei com a impressão de que a {}lista de comandos não...