import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
System.out.println("--------------");
list.add("liushang 1000 0.0 0.0 0 0 ? S< Aug23 0:00 uniux.jar");//OK
list.add("liushang 1005 0.0 0.0 0 0 ? S< Aug23 0:00 unity-");//OK
list.add("liushang 10051 0.0 0.0 0 0 ? S< Aug23 0:00 unit:y-");//OK
list.add("root 10061 0.0 0.0 0 0 ? S< Aug23 0:00 /usr/bin/unity-");//OK
list.add("root 10021 0.0 0.0 0 0 ? S< Aug23 0:00 uniux");//OK
list.add("root 10031 0.0 0.0 0 0 ? S< Aug23 0:00 uniux");//OK
list.add("liushang 1001 0.0 java");//OK
list.add("liushang 1002 0.0 linux");//OK
list.add("liushang 1003 ? windows");//OK
list.add("root 1004 ? java");//OK
list.add("liushang 6383 0.0 0.0 92092 1980 ? S 09:28 0:00 sshd: liushang@pts/2");//OK
list.add("liushang 7786 0.0 0.0 22232 1200 pts/3 R+ 11:57 0:00 ps aux");//OK
list.add("root 13 0.0 0.0 0 0 ? S< Aug23 0:00 [netns]");//OK
list.add("root 904 0.0 0.0 18976 1032 ? Ss Aug23 0:00 cron");//OK
list.add("liushang 7117 0.3 0.6 2420920 51516 pts/1 Sl+ 10:06 0:20 java -jar client.jar");//OK
list.add("liushang 6871 0.3 0.5 2487856 47100 pts/0 Sl+ 10:05 0:20 java -jar server.jar");//OK
list.add("liushang 4124 0.3 0.6 2420920 51516 pts/1 Sl+ 10:06 0:20 java -jar client.jar");//OK
list.add("root 7131 0.0 0.0 91944 3756 ? Ss 10:06 0:00 sshd: ");//这里有空格 单输入也打空格就查不出来,不打空格可以查出
list.add("root 7132 0.0 0.0 91944 3756 ? Ss 10:06 0:00 liushang [priv]");//NO
list.add("root 7133 0.0 0.0 91944 3756 ? Ss 10:06 0:00 sshd: liushang [priv]");//NO
list.add("root 7756 0.0 0.0 0 0 ? S 10:44 0:00 liu [kworker/u:2]");//NO
list.add("root 7757 0.0 0.0 0 0 ? S 10:44 0:00 [kworker/u:2]:1");//NO
list.add("root 7759 0.0 0.0 0 0 ? S 10:44 0:00 :[kworker/u:2]");//NO
list.add("root 7760 0.0 0.0 0 0 ? S 10:44 0:00 :[kwo:rker/u2]");//NO
list.add("root 7130 0.0 0.0 91944 3756 ? Ss 10:06 0:00 sshd: liushang [priv]");//NO
String name = "java -jar client.jar";
List<Integer> pids = nameId(name, list);
for(Integer id : pids){
System.out.println(id);
}
}
public static List nameId(String name,List<String> list) {
List<Integer> pids = new ArrayList();
int count = 0;
String str="";
int length = name.length();
for(String s : list){
if(s.indexOf(name)!=-1){
if(s.substring(s.indexOf(name)).trim().length()==length){
str+=count+",";
}
}
count++;
}
String strs[] = str.split(",");
for(String s : strs){
//System.out.println(list.get(Integer.parseInt(s)).substring(9, 15).trim());
//pnames[i] =Integer.parseInt(list.get(Integer.parseInt(strs[i])).substring(9, 15).trim());
pids.add(Integer.parseInt(list.get(Integer.parseInt(s)).substring(9, 15).trim()));
}
return pids;
}
public static List nameId(String PNAME){
List<Integer> pids = new ArrayList();
return pids;
}
}