Articles of stdin

Como posso “interceptar” Ctrl + C em um aplicativo CLI?

Como posso interceptar Ctrl + C (que normalmente mataria o processo) em um aplicativo Java CLI (interface de linha de comando)? Existe uma solução multi-plataforma (Linux, Solaris, Windows)? Eu estou usando o readLine() Console , mas se necessário, eu poderia usar algum outro método para ler caracteres da input padrão.

Como detectar se o Console.In (stdin) foi redirecionado?

Eu quero escrever um aplicativo de console que tenha um comportamento diferente dependendo se a input está vindo do teclado ou de, digamos, um arquivo. É possível? Qual é a maneira mais elegante de fazer isso em c #?

Detectar se stdin é um terminal ou tubo?

Quando eu executo ” python ” do terminal sem argumentos, ele traz o shell interativo do Python. Quando eu executo ” cat | python ” do terminal, ele não inicia o modo interativo. De alguma forma, sem receber nenhuma input, ele detectou que está conectado a um pipe. Como eu faria uma detecção semelhante em […]

Por que eu recebo o “Exceção não tratada do tipo IOException”?

Eu tenho o seguinte código simples: import java.io.*; class IO { public static void main(String[] args) { BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in)); String userInput; while ((userInput = stdIn.readLine()) != null) { System.out.println(userInput); } } } E recebo a seguinte mensagem de erro: ———- 1. ERROR in io.java (at line 10) while ((userInput = stdIn.readLine()) […]

Confuso sobre stdin, stdout e stderr?

Estou bastante confuso com o propósito desses três arquivos. Se meu entendimento estiver correto, stdin é o arquivo no qual um programa grava em seus pedidos para executar uma tarefa no processo, stdout é o arquivo no qual o kernel grava sua saída e o processo solicitando que acesse as informações, e stderr é o […]

Eu não sou capaz de limpar o stdin

Como limpar o stdin ? Por que não está funcionando no seguinte trecho de código? #include #include #include #include int main() { int i=0,j=0, sat; char arg[256]; char * argq; argq = malloc(sizeof(char)*10); printf(“Input the line\n”); i=read(0, arg, sizeof(char)*9); arg[i-1]=’\0′; fflush(stdin); i=read(0, argq, sizeof(char)*5); argq[i-1]=’\0′; puts(arg); puts(argq); return 0; } Agora, se eu der a […]

Como ler uma linha do console em C?

Qual é a maneira mais simples de ler uma linha completa em um programa do console C O texto typescript pode ter uma duração variável e não podemos fazer nenhuma suposição sobre seu conteúdo.

Enganar um aplicativo para pensar que seu stdout é um terminal, não um pipe

Eu estou tentando fazer o oposto Detectar se stdin é um terminal ou tubo? Estou executando um aplicativo que está alterando seu formato de saída porque ele detecta um canal no stdout e quero que ele seja um terminal interativo para que eu obtenha a mesma saída ao redirect. Eu estava pensando que envolvê-lo em […]

Como leio uma string digitada pelo usuário em C?

Eu quero ler o nome typescript pelo meu usuário usando programas em C. Para isso eu escrevi: char name[20]; printf(“Enter name: “); gets(name); Mas usar gets não é bom, então qual é o melhor caminho?

Usando fflush (stdin)

Assim, uma busca rápida no Google por fflush(stdin) para limpar o buffer de input revela vários sites que avisam sobre o uso. E é exatamente assim que meu professor de CS ensinou a class a fazer isso. Quão ruim é usar fflush(stdin) ? Devo realmente me abster de usá-lo, mesmo que meu professor esteja usando […]