[TIL] 라즈베리파이 4 SSH접속

배뭉·2021년 5월 17일
0

Study

목록 보기
2/12
post-thumbnail

윈도우에서 라즈베리파이로 ssh 접속하기

1. Putty

  • 구글에서 Putty를 검색하여 최신버전 (0.75)버전을 64-bit x86으로 다운받는다.

  • 인스톨을 하고 Putty를 실행하면 프로그램이 이런모양으로 뜨는데,
    형광펜 칠해 놓은 곳에 라즈베리파이 ip주소를 입력하고 오픈을 누른다.

  • 오픈을 누르면 이렇게 터미널창이 뜨는데 라즈베리파이 id와 비밀번호를 입력하면 접속이 된다.

2. 윈도우10 OpenSSH 클라이언트 사용

  • 윈도우 검색창에 선택적 기능을 검색하면 선택적 기능 관리가 나오는데 그걸 클릭하면
    오른쪽 창이 뜬다.
  • 그 중에 OpenSSH 클라이언트가 보통 깔려있을 텐데 설치되어 있지 않다면, 위의 기능 추가를 눌러서 OpenSSH 클라이언트를 찾아 설치해주면 된다.

  • OpenSSH 클라이언트 설치가 완료되었다면, 터미널창에 들어가

ssh [라즈베리파이id]@[라즈베리파이 ip address]

  • 위 명령을 입력하고 yes를 입력하면, 해당 id의 비밀번호를 입력하라고 요청을한다.
    비밀번호까지 입력해주면 위의 Putty와 마찬가지로 ssh접속이 정상적으로 된다.

라즈베리파이에서 C코딩하기

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//#include <conio.h> UNIX에서는 다중 사용자 방식이라, 독점적인 입력방식인 conio.h를 사용할 수 없다. 
//conio.h 표준 라이브러리가 아닌 도스에서 사용하기 위해 만든 라이브 러리이다.
//당연히 리눅스에서는 사용할수 없으며, 당연히 getch나 getche 등의 함수는 사용할 수 없다.

int char_Find(char* str, char deli);
int sLen(char* str);
int chr_Count(char* str, char deli);
char** split(char* str, char deli);
char* Get_Token(int index, char* str, char deli);

int main()
{
	char* sql = "select * from student";
	char* ret = Get_Token(0, sql, ' ');
	printf("%s", ret);
}

int char_Find(char* str, char deli) //문자열 str에서 문자 deli를 순차적으로 찾고 찾으면 해당 인덱스를 리턴
{
	int i = 0;
	while(*str++) //C에서만 허용
	{
		i++;
		if(*str == deli) return i; //찾았을 때 인덱스 반환
	}
	return -1; //없을 때 -1 반환
}

int sLen(char* str)
{
	int i = 0;
	while(*str++) i++; 
	return i;	
}

int chr_Count(char* str, char deli)
{
	int i = 0;
	while(*str++)
	{
		if(*str == deli) i++;
	}
	return i;
}

char** split(char* str, char deli)
{
	int i = 0;
	char* str1 = malloc(sLen(str));
	char** str2 = malloc((chr_Count(str, deli)+1)*4);

	strcpy(str1, str);
	*(str2+i++) = str1;
	while(*str1)
	{
		if(*str1 == deli) 
		{
			*str1 = 0;
			*(str2+i++) = str1+1;
		}
		*str1++;
	}
	return str2;
}

char* Get_Token(int index, char* str, char deli)
{
	char** ret = split(str, deli);
	return *(ret+index);
}


문자열을 delimiter를 기준으로 split하여 원하는 인덱스의 문자열을 리턴해주는 Get_Token 함수를 라즈베리파이에서 C로 구현 해 보았다.
C#에서 DB를 다룰 때 간단하게 만들어서 나름 유용하게 사용하였는데 파이썬, C#같이 게으른 언어를 계속 사용하다가 오랜만에 C를 사용하니 겨우 이거 구현하는데도 살짝 얼타게된다.

profile
SSAFY 6th -> SEC VD SW 👨‍💻🔥

0개의 댓글