분류 전체보기
[Shell Script] 특정 디렉토리안에 파일 존재여부 확인하기
쉘 스크립트를 하면서 겪게 될 수 있는 문제일수도 있고 아닐 수도 있습니다. 하지만 문제를 만났을때 이 글을 통해 문제를 빠르게 해결할 수 있었으면 좋겠습니다. 저는 삽질을 굉장히 많이 했습니다..! findDir=`find /home/pi/video -type d -empty | grep -o video | tr -d '[:space:]'` -> findDir = `` 등으로 하면 오류납니다. 붙여서 써주세요. -> grep -o video //grep이 뽑아내는 string 중 해당 단어가 존재하는 만큼 출력됩니다. video가 3개면 3번 출력! -> tr -d '[:space:]' // 공백 및 엔터를 제거해줍니다. if [ "video" != "$findDir" ]; then echo file ..
[Shell Script] 현재 사용중인 WIFI SSID 값 얻기(파싱)
현재 사용중인 와이파이 이름 찾기입니다! 실행환경은 라즈베리파이4 라즈비안 운영체제입니다. iw dev | grep ssid | tr -d '[:space:]' | cut -c 5- 1. iw dev -> 인터넷에 모든 정보 출력 addr, ssid, type, channel 등등 2. iw dev | grep ssid -> ssid WIFINAME // 스페이스바, 엔터값 등이 포함되어 있는 결과값을 줍니다. 3. iw dev | grep ssid | tr -d '[:space:]' -> ssidWIFINAME // 문자열 안에 있는 모든 스페이스바, 엔터값을 제거하여 결과값을 출력하고 변수에 담아줍니다. // 무려 네번째 파이프 연산입니다. 4. iw dev | grep ssid | tr -d '[:..
[RaspberryPi 4] 부팅시 프로그램 자동시작
라즈베리파이를 부팅할때마다 특정 프로그램을 자동으로 시작할 수 있도록 설정하는 방법을 알려드리겠습니다. 저는 인터넷에 많이 있는 자료들을 참고했을 정상적으로 작동하지 않아서 꽤나 고생했던 부분입니다. 이 글이 누군가에게 도움이 되었다면 좋겠군요. 1. 일반적인 방법 sudo vi /etc/xdg/lxsession/LXDE-pi/autostart @lxterminal ... @lxterminal -e .../start.sh -> 구글 검색 시 상단 및 대부분은 lxterminal을 이용하여 프로그램을 시작하라고 합니다. 2. 해결방법 sudo vi /etc/xdg/lxsession/LXDE-pi/autostart @/bin/bash /home/pi/start.sh @는 붙여도 안붙여도 무관, lxtermi..
[RaspberryPi 4] wpa_supplicant를 이용한 와이파이 설정 + 우선순위 변경
라즈비안 환경에서 설정을 진행하였습니다. 이 글은 GUI가 아닌 CLI를 이용하여 와이파이 정보 갱신을 위한 정보입니다. 1. 일반적인 방법 sudo vi /etc/wpa_supplicant/wpa_supplicant.conf -> change content, save and exit sudo reboot 위와 같은 과정을 진행하면 정상적으로 설정이 변경됩니다. 2. 부팅 없이 진행하는 방법 1) 시행착오 sudo vi /etc/wpa_supplicant/wpa_supplicant.conf -> change content, save and exit sudo ip link set wlan0 down -> 1~10초 대기 sudo ip link set wlan0 up 해당 방법을 사용할 경우 wpa_supp..
[RaspberryPi 4] 인터넷 연결 시 특정 파일 실행
라즈베리파이에서 인터넷이 연결 될때마다 특정 행동을 하기 위해서 어떻게 해야하는지 작성 해보려고 합니다. 다음은 네트워크 감지 시 서버로 데이터(파일)을 전송하는 방법을 설명합니다. 저는 다음 과정을 진행하기 위해 systemd를 사용했습니다. 1. 서비스 파일 작성 sudo vi /lib/systemd/system/FileToServer.service ExecStartPre=/bin/bash -c 'until ping -c1 google.com; do sleep 1; done;' -> 인터넷이 제대로 연결되기 전에 서버로 요청을 보냈기 때문에 구글로 핑을 보냈을 때 응답이 왔을 경우에만 ExecStart 실행 2. 파일 권한 설정 sudo chmod 644 /lib/systemd/system/FileT..
[MySQL] 암호화, 복호화, AES, SHA 알고리즘
※ MySQL 데이터를 넣고 받을 때 SHA-512, AES 암호화 알고리즘을 사용할 예정입니다. 1. SHA(Secure Hash Algorithm) 알고리즘 SHA-512 알고리즘을 이용한 암호화, 복호화 알고리즘 2. AES(Advanced Encryption Standard) 알고리즘 암호화 블럭의 크기가 128비트이며 암호화 키의 길이가 128, 192, 256비트인 세 가지 종류가 AES 표준으로 지정되었다. 각각 AES-128, AES-192, AES-256으로 불린다. 대칭형, 블럭 암호화 알고리즘 미국 정부가 채택하여 기밀문서를 암호화를 했다. 즉, 정부가 믿을 정도라는 것이다. 일단 아직은 AES가 최강의 암호화 알고리즘이고, 키없이 해독하는 것이 거의 불가능하다고 믿어지고 있다. 심지..