01 | import java.util.ArrayList; |
02 | import java.util.List; |
03 |
04 |
05 | public class Test { |
06 |
07 |
08 | public static void main(String[] args) { |
09 | List<String> list = new ArrayList<String>(); |
10 | System.out.println( "--------------" ); |
11 | list.add( "liushang 1000 0.0 0.0 0 0 ? S< Aug23 0:00 uniux.jar" ); //OK |
12 | list.add( "liushang 1005 0.0 0.0 0 0 ? S< Aug23 0:00 unity-" ); //OK |
13 | list.add( "liushang 10051 0.0 0.0 0 0 ? S< Aug23 0:00 unit:y-" ); //OK |
14 | list.add( "root 10061 0.0 0.0 0 0 ? S< Aug23 0:00 /usr/bin/unity-" ); //OK |
15 | list.add( "root 10021 0.0 0.0 0 0 ? S< Aug23 0:00 uniux" ); //OK |
16 | list.add( "root 10031 0.0 0.0 0 0 ? S< Aug23 0:00 uniux" ); //OK |
17 | list.add( "liushang 1001 0.0 java" ); //OK |
18 | list.add( "liushang 1002 0.0 linux" ); //OK |
19 | list.add( "liushang 1003 ? windows" ); //OK |
20 | list.add( "root 1004 ? java" ); //OK |
21 | list.add( "liushang 6383 0.0 0.0 92092 1980 ? S 09:28 0:00 sshd: liushang@pts/2" ); //OK |
22 | list.add( "liushang 7786 0.0 0.0 22232 1200 pts/3 R+ 11:57 0:00 ps aux" ); //OK |
23 | list.add( "root 13 0.0 0.0 0 0 ? S< Aug23 0:00 [netns]" ); //OK |
24 | list.add( "root 904 0.0 0.0 18976 1032 ? Ss Aug23 0:00 cron" ); //OK |
25 | list.add( "liushang 7117 0.3 0.6 2420920 51516 pts/1 Sl+ 10:06 0:20 java -jar client.jar" ); //OK |
26 | list.add( "liushang 6871 0.3 0.5 2487856 47100 pts/0 Sl+ 10:05 0:20 java -jar server.jar" ); //OK |
27 | list.add( "liushang 4124 0.3 0.6 2420920 51516 pts/1 Sl+ 10:06 0:20 java -jar client.jar" ); //OK |
28 | list.add( "root 7131 0.0 0.0 91944 3756 ? Ss 10:06 0:00 sshd: " ); //这里有空格 单输入也打空格就查不出来,不打空格可以查出 |
29 | list.add( "root 7132 0.0 0.0 91944 3756 ? Ss 10:06 0:00 liushang [priv]" ); //NO |
30 | list.add( "root 7133 0.0 0.0 91944 3756 ? Ss 10:06 0:00 sshd: liushang [priv]" ); //NO |
31 | list.add( "root 7756 0.0 0.0 0 0 ? S 10:44 0:00 liu [kworker/u:2]" ); //NO |
32 | list.add( "root 7757 0.0 0.0 0 0 ? S 10:44 0:00 [kworker/u:2]:1" ); //NO |
33 | list.add( "root 7759 0.0 0.0 0 0 ? S 10:44 0:00 :[kworker/u:2]" ); //NO |
34 | list.add( "root 7760 0.0 0.0 0 0 ? S 10:44 0:00 :[kwo:rker/u2]" ); //NO |
35 | list.add( "root 7130 0.0 0.0 91944 3756 ? Ss 10:06 0:00 sshd: liushang [priv]" ); //NO |
36 | |
37 | |
38 | String name = "java -jar client.jar" ; |
39 | List<Integer> pids = nameId(name, list); |
40 | for (Integer id : pids){ |
41 | System.out.println(id); |
42 | } |
43 | } |
44 | |
45 | public static List nameId(String name,List<String> list) { |
46 | List<Integer> pids = new ArrayList(); |
47 | int count = 0 ; |
48 | String str= "" ; |
49 | int length = name.length(); |
50 | for (String s : list){ |
51 | if (s.indexOf(name)!=- 1 ){ |
52 | if (s.substring(s.indexOf(name)).trim().length()==length){ |
53 | str+=count+ "," ; |
54 | } |
55 | |
56 | } |
57 | count++; |
58 | } |
59 | String strs[] = str.split( "," ); |
60 | for (String s : strs){ |
61 | //System.out.println(list.get(Integer.parseInt(s)).substring(9, 15).trim()); |
62 | //pnames[i] =Integer.parseInt(list.get(Integer.parseInt(strs[i])).substring(9, 15).trim()); |
63 | pids.add(Integer.parseInt(list.get(Integer.parseInt(s)).substring( 9 , 15 ).trim())); |
64 | } |
65 | |
66 | |
67 | return pids; |
68 | } |
69 | public static List nameId(String PNAME){ |
70 | List<Integer> pids = new ArrayList(); |
71 |
72 | return pids; |
73 | } |
74 |
75 | } |
