Подключение к не доменному Серверу с использованием скрипта Powershell с помощью вызова PUTTY

Исключение нулевого указателя - это индикатор того, что вы используете объект, не инициализируя его.

Например, ниже - класс ученика, который будет использовать его в нашем коде.

public class Student {

    private int id;

    public int getId() {
        return this.id;
    }

    public setId(int newId) {
        this.id = newId;
    }
}

Приведенный ниже код дает вам исключение с нулевым указателем.

public class School {

    Student obj_Student;

    public School() {
        try {
            obj_Student.getId();
        }
        catch(Exception e) {
            System.out.println("Null Pointer ");
        }
    }
}

Поскольку вы используете Obj_Student, но вы забыли инициализировать его, как в правильном коде, показанном ниже:

public class School {

    Student obj_Student;

    public School() {
        try {
            obj_Student = new Student();
            obj_Student.setId(12);
            obj_Student.getId();
        }
        catch(Exception e) {
            System.out.println("Null Pointer ");
        }
    }
}
-1
задан Scoine 11 April 2019 в 09:13
поделиться

1 ответ

Я хотел бы знать, как определить, было ли соединение успешным или оно не установилось?

Putty не предоставляет механизм внешним программам, таким как Powershell, который указывает, является ли Сеанс SSH был или не был успешно установлен.

Есть ли какой-нибудь код возврата для команды Putty, который скрипты могут перехватить, по которому я смогу определить?

Нет.

Я собираюсь пропустить назначение существующих кодов и то, как вы извлекаете их в Powershell. Вы можете найти эту тошноту в сети.

Мартин Прикрыл предлагает использовать библиотеку .NET SSH.

Если вы настроены на создание сценариев через SSH-клиент, посмотрите на plink или ssh-клиент Windows 10 . Например, если вы используете встроенный ssh-клиент для Windows 10 с чем-то вроде ...

ssh foo@bar
$?

Соединение с bar как пользователь foo завершится неудачно, и вы увидите, что $? вернет false в качестве результата.

0
ответ дан Adam 11 April 2019 в 09:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: