Skip to content

Instantly share code, notes, and snippets.

View potados99's full-sized avatar
πŸ€ͺ
μ—γ…Žνžˆγ…£γ…£ν›„μš°νžˆμš°νžˆνžˆνžˆγ…£ν’‰ν‚€γ…£γ…£μ΄ν›Ÿ

솑병쀀 potados99

πŸ€ͺ
μ—γ…Žνžˆγ…£γ…£ν›„μš°νžˆμš°νžˆνžˆνžˆγ…£ν’‰ν‚€γ…£γ…£μ΄ν›Ÿ
View GitHub Profile
@potados99
potados99 / pre-commit.sh
Created August 18, 2024 03:33
Pre commit hook
#!/bin/bash
[ "$(git symbolic-ref --short HEAD)" = "main" ] && echo "Pushing to main is not allowed." && exit 1
@potados99
potados99 / Scratch.java
Last active January 15, 2024 06:57
λΆ•μ–΄λΉ΅ν‹€
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import java.nio.charset.Charset;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Comparator;
import java.util.stream.Stream;
class XorPerformer {
@potados99
potados99 / Scratch.java
Last active January 1, 2024 13:27
ν‘œμ€€γ…‹μ•”ν˜Έν™”γ…‹γ…‹γ…Ž
import java.io.IOException;
import java.nio.charset.Charset;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Base64;
class Scratch {
public static void main(String[] args) throws IOException {
String pathPrefix = "C:\\Users\\Administrator\\AppData\\Roaming\\Google\\AndroidStudio2023.1\\scratches";
String filename = "20240101-123사4567-X-10-1234678.TXT";
@potados99
potados99 / main.cpp
Created December 14, 2023 09:49
Self registering factory pattern, modified
/*
Original source code from: https://www.nirfriedman.com/2018/04/29/unforgettable-factory/
*/
#include <iostream>
#include <string>
#include <vector>
template<class Base>
class Factory {
@potados99
potados99 / memberSeq.sh
Last active February 12, 2023 00:36
곡ꡰ κΈ°λ³Έκ΅°μ‚¬ν›ˆλ ¨λ‹¨ 인터넷 νŽΈμ§€ memberSeq κ΅¬ν•΄μ˜€λŠ” 슀크립트
curl 'http://airforce.mil.kr:8081/user/emailPicViewSameMembers.action?siteId=last2&searchName=솑병쀀&searchBirth=19990211' -L -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36' | grep "μ„ νƒν•˜κΈ°" | sed -e 's/.*[^0-9]\([0-9]\+\)[^0-9]*$/\1/'
@potados99
potados99 / public_api.sql
Created December 27, 2022 05:51
Public API ν…œν”Œλ¦Ώ
/**
POP ν΄λΌμ΄μ–ΈνŠΈκ°€ 직접 ν˜ΈμΆœν•˜λŠ” public ν”„λ‘œμ‹œμ € ν…œν”Œλ¦Ώμž…λ‹ˆλ‹€.
λͺ¨λ“  μ˜ˆμ™Έκ°€ μ—¬κΈ°μ„œ 작히며, νŠΈλžœμž­μ…˜μ„ κ΄€λ¦¬ν•©λ‹ˆλ‹€.
ν”„λ‘œμ‹œμ € 이름, μ•„λž˜ 주석과 v_tag, v_summary, v_detail을 μˆ˜μ •ν•œ ν›„ μ‚¬μš©ν•˜μ—¬ μ£Όμ„Έμš”.
*/
create
definer = MES_DHSol@`%` procedure sp_POP_GJ_BLAH_BLAH(
in $EQP_MASTER_CD varchar(32),
in $PRD_WO_CD varchar(32),
in $EMP_CD varchar(32)
@potados99
potados99 / package_module_method.sql
Created December 27, 2022 05:50
νŒ¨ν‚€μ§€ λͺ¨λ“ˆ λ©”μ†Œλ“œ ν…œν”Œλ¦Ώ
/**
λ‚΄λΆ€μ—μ„œ μ‚¬μš©λ˜λŠ” νŒ¨ν‚€μ§€ λͺ¨λ“ˆμš© λ©”μ†Œλ“œ ν”„λ‘œμ‹œμ € ν…œν”Œλ¦Ώμž…λ‹ˆλ‹€.
νŠΈλžœμž­μ…˜κ³Ό μ˜ˆμ™Έ μ²˜λ¦¬κΈ°κ°€ μ—†μŠ΅λ‹ˆλ‹€.
ν”„λ‘œμ‹œμ € 이름, μ•„λž˜ 주석과 v_tag, v_summary, v_detail을 μˆ˜μ •ν•œ ν›„ μ‚¬μš©ν•˜μ—¬ μ£Όμ„Έμš”.
*/
create
definer = MES_DHSol@`%` procedure Package_Module_Method(
)
comment '~ν•˜λŠ” ν”„λ‘œμ‹œμ €'
begin
@potados99
potados99 / package_module_function.sql
Created December 27, 2022 05:50
νŒ¨ν‚€μ§€ λͺ¨λ“ˆ ν•¨μˆ˜ ν…œν”Œλ¦Ώ
/**
λ‚΄λΆ€μ—μ„œ μ‚¬μš©λ˜λŠ” νŒ¨ν‚€μ§€ λͺ¨λ“ˆμš© λ©”μ†Œλ“œ ν•¨μˆ˜ ν…œν”Œλ¦Ώμž…λ‹ˆλ‹€.
νŠΈλžœμž­μ…˜κ³Ό μ˜ˆμ™Έ μ²˜λ¦¬κΈ°κ°€ μ—†μŠ΅λ‹ˆλ‹€.
ν•¨μˆ˜ 이름, μ•„λž˜ 주석과 v_tag, v_summary, v_detail을 μˆ˜μ •ν•œ ν›„ μ‚¬μš©ν•˜μ—¬ μ£Όμ„Έμš”.
*/
create
definer = MES_DHSol@`%` function Package_Module_Method(
) returns varchar(32)
comment '~ν•˜λŠ” ν•¨μˆ˜'
begin
@potados99
potados99 / index.js
Last active July 29, 2023 14:37
μž„μ‹œ 데이터 μˆ˜μ§‘κΈ°(collect.potados.com) AWS Lambda κ΅¬ν˜„
const fs = require('fs').promises;
const path = require('path');
const { randomUUID } = require('crypto');
async function getDataSource(channelName) {
const channelNameSanitized = channelName.replace(/\//g, '').replace(/\./g, '').trim();
if (!channelNameSanitized) {
throw new Error(`Invalid channel name: [${channelName}]`);
}
@potados99
potados99 / cloud-config.txt
Last active October 30, 2022 14:46
RMS Cloud Config
Zv65DvZ4uip59etBkYX2eVt5gDWosL2+U7Ll0BdQ41tZv2MrD6pQQ3VzomCiQkJgruU/wAZnG3NY0HJRevAVGttC3dU5+s3km2r6Cf2k4UaN37wKMz7JZIu6wMJ4kqFDW73hIeieTEZW8DZki66cvO++W+fuz9Kajio2k/ZslbSSZ3BkzNp3E12Gb99m9v18rZpROWQ5xMPbnZkLMNW68yMHeNGcWMJuiN++FyRDCSRu3PwTmVZBkWC9pi+n1BYqTacnd3cbboYrWG6M4uFn1p7X28X5seDVKlx3S+t4xbwJJAOIWDG3BNyAuWmTM9tXNShnWhjs/nLgAtHmuEo4Q5FQwMtYVrcNlAd92G9FC605vkZazXvG1q31PmpHKRUOOi25w7jKrl3NzbJsiHyf7Es/VGtKse/26SE/oVOZeI10jL9BAfGzLdFtpwYaVZqT58vo8Ld0YCEaIzZ7dVDQQbg5AAso5U29QE+AxAHZQxYzBn6BBKlde0e0E32uIwBocWZNMtY6y5dHuDLpaZ/gXvYA/23l92mwKcC8rhVfUXVrIIHsA2I5fAhdUKp3atNgdugu+M9o5N1laB8fT1KqwFulbsCrG2v5AuUiuza1XYrQFb2k6JPOgLYOT3nftQqEPyiD4rViXlzbCZ/BzZ/vKUw1EEOFq1WXAo+X6o1EZ8lJwRVCdtZJbVaEdv8iSLTs9qaFPxu/Jkw+vcevINoCFr+R8vGn0OKVM+EjEJpospH7TDHVe7rVeinLbjbmSZQd3QBdqYo8U8K8QQEpqqXUgA/qxGdG11qOGP7lBtX5719QOGJCRIkJpLBaEaWYdW8mkm+ediAI9GhvedTK8TUsqr1FbVkvgpS5W/3K8wYTpfR41xKWbQi0qiH5E3wlI90TDCNM9HMS7Xo1WONJyaAeVQ==