Eu sei que, nohupsendo um binário, pode ser alcançado a partir de qualquer shell. Mas o execbuilt-in provavelmente existe em todos os shell. Existe um motivo para preferir um deles, ao outro?
A família de funções exec () substitui a imagem do processo atual por uma nova imagem do processo, mantendo o pid e os pipes do processo antigo. Essa tag também é usada para o shell interno, que pode ser usado para substituir o shell atual por um programa ou vários itens relacionados ao redirecionamento.
Eu sei que, nohupsendo um binário, pode ser alcançado a partir de qualquer shell. Mas o execbuilt-in provavelmente existe em todos os shell. Existe um motivo para preferir um deles, ao outro?
Então, achei que tinha um bom entendimento disso, mas apenas fiz um teste (em resposta a uma conversa em que discordava de alguém) e descobri que meu entendimento é defeituoso ... Com o máximo de detalhes possível, o que exatamente acontece quando executo um arquivo no meu shell? O que quero dizer...
Isso é literal, {fd}não é um espaço reservado. Eu tenho um script que faz isso e não gera nada, nem faz referência a {fd} em nenhum outro lugar. Isso é válido? exec
Eu vi exemplos de scripts de wrapper que, em poucas palavras, são os seguintes: #!/bin/bash myprog=sleep echo "This is the wrapper script, it will exec "$myprog"" exec "$myprog" "$@" Como visto acima, eles usam execpara substituir o shell recém-criado quase imediatamente pelo $myprog. Pode-se...
Em C, qual é a maneira mais fácil de executar um utilitário padrão (por exemplo, ps) e nenhum outro? Does POSIX garantia de que, por exemplo, um padrão psestá em /bin/psou devo redefinir a variável de ambiente PATH para que eu recebo com confstr(_CS_PATH, pathbuf, n);e, em seguida, executar o...
Acho difícil formular a pergunta com precisão, mas darei o meu melhor. Eu uso dwmcomo meu gerenciador de janelas padrão edmenucomo meu iniciador de aplicativos. Eu quase não uso aplicativos GUI além do meu navegador. A maior parte do meu trabalho é feita diretamente na linha de comando. Além disso,...
Em bashvocê pode usar exec -ae em zshvocê também pode configurar ARGV0um programa com um certo argumento zeroth, mas existe também uma maneira POSIX de fazer isso? Como sugerido neste comentário, você pode criar um link simbólico (temporário) para conseguir isso, mas dessa maneira não pude definir...
Não tenho muita experiência, apenas tentando me envolver nos processos, como eles interpretam o hardware no nível do usuário. Portanto, quando um comando é acionado a partir de um shell, fork()herda um processo filho e exec()carrega o processo filho na memória e é executado. Se o processo filho...
Existe alguma maneira de escolher dinamicamente o intérprete que está executando um script? Eu tenho um script que estou executando em dois sistemas diferentes, e o intérprete que eu quero usar está localizado em locais diferentes nos dois sistemas. O que eu preciso fazer é mudar a linha de...
Estou usando o Trisquel GNU / Linux-Libre, que vem com o Gnome3 Flashback Desktop Environment. Eu sei que posso executar aplicativos GUI como root por sudo& gksudomas quero saber que Como faço para executar aplicativos GUI como root com a ajuda de pkexec? Quando tento executar gedit(ou...
Estou desenvolvendo um aplicativo php usando o servidor Linux. Meu problema está executando shell_exec()para chamar algum arquivo exe não está funcionando (na verdade não é exe, é um tipo de arquivo executável linux) echo shell_exec("whoami"); Eu tenho daemon echo shell_exec("ls") Eu tenho...
Entendo que é execpossível fazer o redirecionamento de E / S no shell atual, mas só vejo uso como: exec 6<&0 # Link file descriptor #6 with stdin. # Saves stdin. exec 6>&1 # Link file descriptor #6 with stdout. # Saves stdout. Pelo que entendi, isso <é para fluxo de entrada,...
Existe uma maneira de kexecreiniciar um kernel em execução sem precisar descriptografar um sistema de arquivos raiz LUKS criptografado? Eu imagino que não, mas não tenho certeza se há uma solução alternativa para
Considere isso na documentação do exec incorporado do Bash: exec substitui o shell sem criar um novo processo Forneça um caso de uso / exemplo prático. Não entendo como isso faz sentido. Eu pesquisei e encontrei cerca de I / O redirecionamento . Você pode explicar
Meu comando é: exec &>/dev/null O que esse comando & e completo faz aqui? Eu sei que está sendo redirecionado para o
Conceitos de sistema operacional e APUE dizem Com vfork (), o processo pai é suspenso e o processo filho usa o espaço de endereço do pai. Como o vfork () não usa a cópia na gravação, se o processo filho alterar alguma página do espaço de endereço do pai, as páginas alteradas ficarão visíveis...
Eu li Programação Avançada no UNIX Ambiente por Stevens, 8 th capítulo. Eu li e compreendi todas as seis funções executivas. Uma coisa que noto é que, em todas as funções exec: O primeiro argumento é o nome do arquivo / nome do caminho (depende da função exec). o segundo argumento é argv [0] que...
Usando o bash, como copio stderr e stdout para um arquivo de log e também os deixo exibidos no console? Eu gostaria de fazer isso dentro do próprio script usando um exec. Eu tentei com exec &>> log.out echo "This is stdout" echo "This is stderr" >&2 Mas o acima exposto não...
Eu tenho isso em um script bash: exit 3; exit_code="$?" if [[ "$exit_code" != "0" ]]; then echo -e "${r2g_magenta}Your r2g process is exiting with code $exit_code.${r2g_no_color}"; exit "$exit_code"; fi Parece que ele sairá logo após o comando exit, o que faz sentido. Eu queria saber se...
Estou aprendendo sobre os comandos fork () e exec (). Parece que fork () e exec () geralmente são chamados juntos. (fork () cria um novo processo filho e exec () substitui a imagem do processo atual por uma nova.) No entanto, em quais cenários você pode chamar cada função por conta própria? Existem...