Como posso executar uma linha de comando do Windows em segundo plano, sem interagir com o usuário ativo?
windows
command-line
Mohammad AL-Rawabdeh
fonte
fonte
Respostas:
Sua pergunta é bastante vaga, mas há uma postagem no ServerFault que pode conter as informações necessárias. A resposta lá descreve como executar uma janela de arquivo em lotes oculta:
fonte
É um pouco tarde, mas acabei de me deparar com essa pergunta enquanto procurava a resposta pessoalmente e encontrei o seguinte:
qual, no Windows, é o mais próximo do comando Linux:
No sistema HELP do console:
Um problema que vi com ele é que você tem mais de um programa gravando na janela do console, fica um pouco confuso e confuso.
Para que ele não interaja com o usuário, você pode redirecionar a saída para um arquivo:
fonte
start /B "" program
então ele trabalhou ...Eu suspeito que você quer dizer: Execute algo em segundo plano e recupere a linha de comando imediatamente, com o programa iniciado continuando.
Qual é o equivalente Unix de
fonte
start
? Ele não funciona sem ele (executa apenas uma nova instância de comando), masstart
a ajuda da Microsoft não diz nada sobre isso, ele afirma que todos os parâmetros são opcionais (ou eu não o entendo).start
funciona sem o parâmetro vazio para mim, mas parece que recebo conchas com uma configuração separada quando uso o parâmetro vazio, pois uma configuração que fiz quando não tinha o parâmetro vazio não é usada quando uso o parâmetro vazio. Gostaria de saber por que eles usam configurações separadas?START "" program
inicia um comando em um novo terminal para mim, enquantoprogram &
no Unix executa o comando e imprime a saída no mesmo terminal.o acima está bem mais próximo com o seu homólogo do Unix
program &
fonte
Você pode usar este script (comentado!) Do PowerShell:
Salve-o como um
.ps1
arquivo. Depois de ativar a execução do script (consulte Habilitando scripts no wiki da tag PowerShell ), você pode transmitir uma ou duas cadeias: o nome do executável e, opcionalmente, a linha de argumentos. Por exemplo:Confirmo que isso funciona no Windows 10.
fonte
É assim que meu servidor interno PHP entra em segundo plano. Então, tecnicamente, deve funcionar para todos.
obrigado
fonte
Se você deseja que o programa de linha de comando seja executado sem que o usuário saiba, defina-o como um Serviço do Windows e ele será executado de acordo com uma programação.
fonte
schtasks
comando no Windows XP e superior (aviso:schtasks
é complicado).Uma resposta relacionada, com 2 exemplos:
fonte
call Start /MIN "c" "calc.exe"
SW_*
para aCreateProcessW
viaSTARTUPINFO::wShowWindow
(inclusiveSW_HIDE
).Você pode ver a maneira correta de fazer isso neste link:
Como executar uma tarefa agendada sem aparecer uma janela de comando
Resumindo, você deve marcar a caixa 'Executar se o usuário estiver conectado ou não'. As credenciais do usuário da tarefa devem ser inseridas após pressionar 'Ok'.
fonte
acabei de encontrar esse tópico O Windows 7, usando o Power Shell, executa executáveis em segundo plano, exatamente o mesmo que o nome do arquivo unix &
exemplo: start -NoNewWindow filename
ajudar a começar
NAME Processo inicial
Processo de inicialização SYNTAX [-FilePath] [[-ArgumentList]] [-Credential] [-WorkingDirectory] [-LoadUserProfile] [-NoNewWindow] [-PassThru] [-RedirectStandardError] [-RedirectStandardInput] [-RedirectStand] [-WindowStyle {Normal | Oculto | Minimizado | Maximizado}] [-UseNewEnvironment] []
ALIASES iniciam saps
fonte