Если вы программист, вам придется выполнять операцию Ping несколько раз в день во время ручного тестирования или использования автоматического тестирования JUnit .
Здесь, в Crunchify, мы опубликовали несколько руководств по Java . До сих пор мы получили многократный запрос на реализацию руководства по Java для команды Linux Ping, и вот оно.
Идея очень проста:
- Мы создадим класс
LinuxPingInJava.java - В методе main () используйте утилиту Java Runtime для получения объекта времени выполнения.
- Создать объект Process для выполнения команды
ping crunchify.com - Результат Get Stream -> Анализ результатов с использованием BufferReader -> Печать результатов на консоли
LinuxPingInJava.java
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
пакет crunchify. ком . учебные пособия ;
импорт Java . Ио. BufferedReader ;
импорт Java . Ио. IOException ;
импорт Java . Ио. InputStream ;
импорт Java . Ио. InputStreamReader ;
/ **
* @author Crunchify.com
* Реализация Linux Ping Utility в Java
* /
общественности учебный класс LinuxPingInJava {
частный учебный класс crunchifyResultFromCommand продолжается Нить {
InputStream inputStream знак равно ноль ;
// Этот абстрактный класс является суперклассом всех классов, представляющих входной поток байтов.
crunchifyResultFromCommand ( InputStream есть , строка тип ) {
это. InputStream знак равно есть ;
}
общественности недействительным запустить ( ) {
строка crunchifyString знак равно ноль ;
пытаться {
// Считывает текст из потока ввода символов, буферизует символы, чтобы обеспечить эффективное чтение символов, массивов и строк.
BufferedReader br знак равно новый BufferedReader ( новый InputStreamReader ( inputStream ) ) ;
в то время как ( ( crunchifyString знак равно бр . readLine ( ) ) ! знак равно ноль ) {
Система. вне. println ( crunchifyString ) ;
}
} ловить ( IOException ioException ) {
ioException . printStackTrace ( ) ;
}
}
}
общественности crunchifyResultFromCommand getStreamResult ( InputStream inputStream , строка тип ) {
вернуть новый crunchifyResultFromCommand ( inputStream , тип ) ;
}
общественности статический недействительным main ( Строка [ ] аргументы ) {
// Возвращает объект времени выполнения, связанный с текущим приложением Java.
Время выполнения crunchifyRuntime знак равно Продолжительность. getRuntime ( ) ;
LinuxPingInJava rte знак равно новый LinuxPingInJava ( ) ;
crunchifyResultFromCommand crunchifyError , crunchifyResult ;
пытаться {
// Process proc = rt.exec (curl -v https://www.google.com);
Процесс proc1 знак равно crunchifyRuntime . exec ( ping crunchify.com ) ;
crunchifyError знак равно RTE. getStreamResult ( proc1 . getErrorStream ( ) , «ОШИБКА» ) ;
crunchifyResult знак равно RTE. getStreamResult ( proc1 . getInputStream ( ) , «ВЫХОД» ) ;
crunchifyError . начало ( ) ;
crunchifyResult . начало ( ) ;
// Сигнализирует, что произошло какое-то исключение ввода / вывода.
} ловить ( Исключение IOException ) {
исключение. printStackTrace ( ) ;
}
}
}
|
После того, как вы запустите программу Java, вы увидите такой результат:
Результат Eclipse Console
|
1
2
3
4
5
6
7
|
PING crunchify. ком ( 45.33.15.213 ) : 56 байты данных
64 байты из 45.33.15.213 : icmp_seq = 0 ttl = 55 время = 90,163 Миз
64 байты из 45.33.15.213 : icmp_seq = 1 ttl = 55 время = 89,469 Миз
64 байты из 45.33.15.213 : icmp_seq = 2 ttl = 55 время = 89,766 Миз
64 байты из 45.33.15.213 : icmp_seq = 3 ttl = 55 время = 88,897 Миз
64 байты из 45.33.15.213 : icmp_seq = 4 ttl = 55 время = 91.140 Миз
64 байты из 45.33.15.213 : icmp_seq = 5 ttl = 55 время = 89,950 Миз
|
0.00 (0%) 0 votes







