Linux-2.6.35.13 kernel/sched.c有一个函数find_process_by_pid().我尝试使用以下代码:
int main()
{
struct task_struct *p;
pid_t pid;
pid=2130;
p = find_process_by_pid(pid);
printf("task_struct.state: %s\n", p->state);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
$ gcc getProcbyId.c -o getProcbyId
获取以下警告和错误:
getProcbyId.c: In function 'main':
getProcbyId.c:19:4: warning: assignment makes pointer from integer without a cast
getProcbyId.c:21:37: error: dereferencing pointer to incomplete type
Run Code Online (Sandbox Code Playgroud)
请提供建议如何解决这个问题.
输入文件:
$ cat t.txt
id1;value1_1
id1;value1_2
id2;value2_1
id3;value3_1
id4;value4_1
id4;value4_2
id5;value5_1
Run Code Online (Sandbox Code Playgroud)
结果将是:
id1;value1_1;id1;value1_2
id3;value3_1
id4;value4_1;id4;value4_2
id5;value5_1
Run Code Online (Sandbox Code Playgroud)
使用sed或awk.请提出你的意见.