Я пытался прочитать ввод из файла в c код, но что-то идет не так. Программа может читать ввод, но не отображает ожидаемый вывод. Вот мой c код:
#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
void call_me(char* ptr){
system(ptr);
}
int main(){
char str[10];
read(0,str,100);
call_me(str);
printf("executed");
return 0;
}
Когда я запускаю выше код в терминале как:
./sys
и даю / bin / sh в качестве ввода, это приводит меня к ракушка. Но при использовании:
cat file | ./sys
выполняется только распечатка. Здесь содержимое файла:
/bin/sh