연말 여행 사진 촬영 겸 취미생활을 위해 중고로 구매한 리코 RG 3

장점은 내장 필터 기능을 사용하면 보정 없이도 꽤나 괜찮은 질감의 사진을 찍을 수 있고 부피가 작아 가볍게 사용하기 좋다

 

 

필름 사진 느낌 나는 색감은 좋은데, 그 색감을 살려 찍는 게 쉽지 않다. 아마도 내가 노출의 3요소를 컨트롤하지 못해서 인 듯?
사실 생각 없이 막 찍으면 폰카보다 못하다.

모든 사진은 보정 없이 jpeg 원본이다

 

 

 
 
 
 
728x90
반응형

'ETC > Daily Life' 카테고리의 다른 글

[프랑코 폰타나]  (0) 2023.02.26
[카시코이] 빛이 예쁜 화과자 카페  (0) 2022.12.19
[한탄] tibero  (0) 2020.06.14

고용량의 텍스트 파일(25기가가 넘는 로그파일)을 보려니 일전에 올렸던 LTF 역시 답답해서 파일 분할, 검색 하기로 했다.

사실 결국 컴퓨터 사양이 좋으면, 로그를 꼭 필요한 것만 출력해서 용량차지가 적도록, 혹은 애초에 로그를 분석할 필요가 없는 코드를 짰다면 이런 일이 발생하지 않는데 아무튼 상황을 이지경으로 만든 사람은 누군지도 이 자리에 있지도 않으니 이런 잡 기술만 늘어가는 중이다.

PowerShell은 Linux 명령어랑은 많이 다르고 뭔가 맘에 안듦...

형식

$i=0; Get-Content 원본파일경로 + 파일명 -ReadCount 분할할_라인_수 | %{ $i++; $_ | Out-File 출력경로_파일명-$i.log; Write-Host $i }

 

$i=0; Get-Content .\WAS-29-20220325.log -ReadCount 1000 | %{ $i++; $_ | Out-File D:\cat_log\WAS-29\20220325-$i.log; Write-Host $i }
728x90
반응형

SMTP 오류 코드 및 내용에 관한 표준 설명임.
대략적인 표준은 존재하나, 대부분의 메일 서버들이 표준적인 의미를 준수하지 않음으로 참고만 하고, 해당 메일의 서버 담당자에게 문의 하도록 하자.

SMTP 4XX

메일 교환시에 발생하는 4XX 오류들은 수신 서버의 오류 및 발송 서버의 잘못된 요청 작없 혹은 수신 서버의 스팸정책에 의한 메일 수신 거절, 또는 수신 서버의 일시적인 장애 때문에 발생할 수 있는 일시적인 오류임.

SMTP 421

Service Not Abailable, closing transmission channel.
해당 서버가 정상 작동하지 않기 때문에, 요청한 연결을 거절한다는 내용.

  • 서버가 클라이언트의 접속 자체를 거부하는 경우.
  • 서버가 비정상적인 상황인 경우.
  • 서버에 많은 부하가 있어 일시적으로 접속을 거절한 경우.
  • 서버에서 알 수 없는 오류 발생시.

SMTP 450

Requested action aborted: local error in processing.
수신측 메일 서버의 내부적인 이유로 메일 교환 작업 거절.
대부분 스팸 설정 때문에 거절하는 경우.

  • 제한된 크기보다 메일이 큰 경우.
  • 첨부 파일이 많은 경우.
  • 수신측 서버의 알 수 없는 오류

SMTP 451

Requested action aborted: local error in processing.
수신측 메일 서버의 내부적인 이유로 메일 교환 작업을 거절하는 경우.

  • 수신측 메일 서버의 내부적인 이유노 메일 수신 작업을 거절하는 경우
  • 대부분의 경우는 수신측의 스팸 설정때문에 거절하는 경우
  • 제한된 크기보다 메일이 큰 경우, 첨부 파일가 많은 경우.
  • 수신측 서버의 알수 없는 오류.

SMTP 451

Resources temporarily unavailable. Please try again later.
수신측 메일 서버의 부하로 메일 교환 작업을 일시적으로 거절.

SMTP 452

Requested action not taken: insufficient system storage.
수신측 메일 서버의 내부적인 이유로 메일 교환 작업을 거절.

  • 수신측 메일 서버의 내부적인 이유 때문에, 메일 수신 작업을 거절하는 경우.
  • 수신측의 스팸 설정 때문에 거절하는 경우
  • 한개의 연결에서 너무 많은 RCTP 반복이 수행된 경우
  • 수신측 서버의 알수 없는 오류.
728x90
반응형

'ETC' 카테고리의 다른 글

mixin  (0) 2024.01.10
[PowerShell] 텍스트파일 분리  (0) 2022.03.29
[ETC TIP] Windows 환경에서 Tomcat Log 실시간 보기  (0) 2021.03.15
[조달청/나라장터] iframe 링크 생성  (0) 2021.02.04
대용량 텍스트 파일 읽기  (0) 2020.07.01

아래 정규표현식은 html 태그를 제거하기 위한 식으로 모든 태그를 제거함.
html 태그가 포함된 src라는 문자열에서 <tag></tag>를 '' 빈 문자열로 치환해 줌.

  const extractTextPattern = /(<([^>]+)>)/gi;

 

모든 태그 제거하기

  <div id="target">
    <h1>This Content is target</h1>
    <span>to replace</span>
    .
  </div>

아래 코드로 위의 #target 엘리먼트를 innerHTML을 통해 하위 모든 문자열을 불러온 후 담은 태그들을 제거할 것임.

  let target = document.getElementById('target');

  let src = target.innerHTML;
  console.log( src );
  /**
   * ->
   * <h1>This Content is target</h1>
   * <span>to replace</span>
   * .
   */
  let extractedText = src.replace(extractTextPattern, '');
  console.log( extractedText );
  /**
   * ->
   * This Content is target
   * to replace
   * .
   */

모든 태그 요소가 제거되어 안의 텍스트만 꺼낼 수 있음.

 

원하는 태그만 제거하는 방법

모든 태그가 아닌 내가 원하는 태그만 선택하여 제거하는 방법도 있음.
h1 태그만 없애고 싶다면, 다음 패턴을 사용하면 됨.

  const extractSpanPattern = /<(\/h1|h1)([^>]*)>/gi;

  let eraseSpan = src.replace(extractSpanPattern, '');
  console.log( eraseSpan );
  /**
   * ->
   * This Content is target
   * <span>to replace</span>
   * .
   */

 

script 태그와 javascript 소스까지 제거하는 패턴

종종 script 태그와 js 소스까지 지워야 하는 경우도 있음.
이럴 경우에는 패턴을 다음과 같이 사용하면 됨.

  const jsPttrn = /<script[^>]*>((\n|\r|.)*?)<\/script>/gim;

참고로 css 태그와 css 소스까지 지우고 싶다면,

  const cssPttrn = /<style[^>]*>((\n|\r|.)*?)<\/style>/gim;

 

플래그를 사용한 정규표현식 고급 사용법

정규 표현식은 여섯 개의 옵션이 있음. 이를 통해 전역 검색 또는 대소문자 구분 없는 검색등을 할 수 있음.

options description
g 전역검색. 종종 g 옵션을 몰라서 replaceAll이라는 함수를 새로 만들어 사용한 코드도 있음.
i 대소문자 구분 없는 검색
m 다중행 (multiline) 검색
s . 에 개항 문자 매칭 (ES2018)
u 패턴을 유니코드 코드 포인트의 나열로 취급합.
y 'sticky' 검색 수횅. 문자열의 현재 위치부터 검색을 수행함.
728x90
반응형

리눅스나 MacOS 는 tail 함수가 내장 되어 있기 때문에 서버의 로그를 실시간으로 보는 법은 간단하다.

Window의 경우는 cmd 상에서 명령어가 있긴 하지만, 버젼에 따라 없거나, 옵션 값도 달라지고 cli의 ux가 좋지 않기 때문에 차라리 써드파티 어플리케이션을 사용하는 게 낫다.

mtail 이라는 프로그램인데, 설치는 필요 없고, 아래 링크에서 다운로드 후 압축을 풀고 실행, 대상 파일을 불러와 주기만 하면 된다.

 

프로그램 다운로드 -> http://ophilipp.free.fr/op_tail.htm

728x90
반응형

조달청/나라장터 iframe 링크 생성

공공 SI를 진행하다 보면 조달청/나라장터 데이터를 iframe으로 넣어 달라는 요구 사항이 있다.
처음에는 어떻게 하는지 몰라서 한참 삽질 했는데,
나중에 알고보니 iframe용 url 생성하는 서비스가 따로 있었다.
그건 여기

728x90
반응형
728x90
반응형

정말 궁금한게,

연봉 10억대 받는 Oracle 개발자가 만든 Oracle DB를 사용 하지 않고,
연봉 1억대 받을까 말까 하는 T MAX 개발자가 만든 Tibero를 쓰는 이유는 대체 뭘까.

728x90
반응형

'ETC > Daily Life' 카테고리의 다른 글

[프랑코 폰타나]  (0) 2023.02.26
[카시코이] 빛이 예쁜 화과자 카페  (0) 2022.12.19
RICOH GR3  (1) 2022.12.19

좌표계 (Coordinate System)

좌표계는 공간상의 한 점의 위치를 표시라는 숫자들의 순서 쌍인 좌표를 정하기 위한 체계로,
원점과 기준 길이, 기준 축이나 기준선들의 집합을 통틀허 이르는 말임.
서로 수직인 직선을 기준 축으로 갖는 Rectangular Coordinate System이(직교 좌표계, 평면 좌표계 또는 데카르트 좌표계라고도 함) 가장 널리 쓰이고 그 밖에 곡선 좌표계들이 있음.
데카르트는 천장에 붙은 파리의 위치를 표현하기 위해 고안 했다고 함.

좌표계의 종류

  • 극 좌표계 (Polar Coordinate System)
  • 원기둥 좌표계 (Cylindical Coordinate)
  • 구면 좌표계 (Spherical Coordinate)
  • 동차 좌표계 (Homogeneous Coordinate)
  • 세계 지구 좌표 시스템 (World Geodetic System : WGS )

EPSG:3857

  • [14541934.699146198, 4291217.769314549]와 같은 형식
  • Google Map, Open Street Map에서 사용
  • 미터 단위를 사용함
  • Open Street Map과 OpenLayers가 밀접한 관계에 있기 때문에, OpenLayers의 기본 좌표임.

EPSG:4326 -> WGS84(라고도 함)

  • [130.63242200911046, 35.93162949347317]와 같은 형식
    • [±180 , ±90]
  • Google Earth에서 사용, 거의 모든 GPS에서 사용.
  • 소수점 단위를 사용함 (decimal degrees)

경도와 위도

좌표는 경도(Longtitude)와 위도(Latitude) 로 이루어 져 있음.

  • 경도 : X축 이라고 보면 됨.(동경, 서경)
    • 지구를 세로선으로 나눈것.
    • 영국의 그리니치 천문대를 기준으로 동경 180도, 서경 180도로 나눔.
    • 동경 180도와 서경 180도가 만나는 세로선이 날짜 변경선이 됨.
  • 위도 : Y축 이라고 보면 됨.(북위, 남위)
    • 적도를 0도로 기준잡고 지구를 남과 북으로 나누어서 북위, 남위 각각 0 ~ 90도로 구분함.

순서가 헷깔릴 땐 경위도, lola 로 기억하면 됨.

출처

  • 위키 백과
  • 네이버 물리학 백과
  • BizGIS
728x90
반응형

'ETC > GIS' 카테고리의 다른 글

[OpenLayers] 마우스 커서 위치에 대한 지도 좌표 보기  (0) 2019.11.15
OpenLayers로 지도 띄우기.  (1) 2019.11.08

커서가 위치한 곳의 좌표를 표출하기.

OpenLayers에서 지도상 특정 위치에 대한 좌표를 가져오는 방법 중, 가장 기본적인 마우스 위치에 대한 지도 좌표 보는 방법.
OpenLayers에서 기본적으로 제공하는 MousePosition이라는 컨트롤 모듈을 사용하면 됨.

예제를 진행하기전에,
OpenLayers 공식 사이트에서는 import를 사용하는 문법을 추천함.
But, 복습 겸 간단하게 코드를 남기는 중이니 CDN 방식으로 하겠음.

ES6의 import 문은 다음과 같은 방법으로 대체시키면 됨.

// import Map from 'ol/Map';
const Map = ol.Map;

// import View from 'ol/View';
const View = ol.View;

// import {defaults as defaultControls} from 'ol/control';
const defaultControls = ol.control.defaults;

1. 좌표값을 표출하는 div 선언

<div id="mouse-position"></div>

2. 마우스 좌표를 가져오는 OpenLayers의 모듈 선언.

let mousePositionCtrl = new ol.control.MousePosition({
  coordinateFormat: ol.coordinate.createStringXY(4),
  projection: 'EPSG:4326',
  className: 'custom-mouse-position',
  target: document.getElementById('mouse-position'),
  undefinedHTML: '&nbsp;'
});

이전 예제에서 두 단계만 추가해주면 div 안에 마우스 위치의 좌표를 가져올 수 있음.

그런데 마우스의 좌표가 쌩 숫자임...
좌표계라는 개념이 있고, 좌표계의 종류는 우리나라에서 사용하는 좌표계만 30개 정도 되는 듯?
좌표계에 대한 정리는 여기에 있음.

3. 결과 화면

 
 


전체 코드 보기

728x90
반응형

'ETC > GIS' 카테고리의 다른 글

좌표계 간략 정리  (0) 2019.11.22
OpenLayers로 지도 띄우기.  (1) 2019.11.08

+ Recent posts