๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋ฐ˜์‘ํ˜•

์ „์ฒด ๊ธ€424

[Git] Git ํŠน์ • Branch Clone ํ•˜๊ธฐ Git(๊นƒ)์„ ์ด์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ์‹œ Master(๋งˆ์Šคํ„ฐ)๊ฐ€ ์•„๋‹Œ Develop(๋””๋ฒจ๋กœํผ)์œผ๋กœ ์ƒ์„ฑํ•˜์—ฌ ๊ฐœ๋ฐœ ํ›„ Test ๋ฅผ ์œ„ํ•ด Git Clone์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ๊ทธ๋Ÿฐ ๊ฒฝ์šฐ ๊ธฐ๋ณธ์ ์œผ๋กœ ์•Œ๊ณ  ์žˆ๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ Git Clone์„ ํ•˜๋Š” ๊ฒฝ์šฐ Master๊ฐ€ ๋ฐ”๋กœ Clone(ํด๋ก )์ด ๋จ์— ๋”ฐ๋ผ, Develop๊ณผ ๊ฐ™์ด ํŠน์ • Branch(๋ธŒ๋žœ์น˜)๋ฅผ Clone ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž. $ git clone -b # git clone -b $ git clone -b develop https://github.com/project/test.git Cloning into 'test'... Username for 'https://github.com': xxxxx Password for 'https://xxxxx@.. 2019. 9. 10.
[Napatech] OS time Sync Command Shell >> timedatectl set-local-rtc 1 ntservice.ini Config File [Adapter0] TimeSyncReferencePriority = OSTime 2019. 9. 5.
[Mac] Mojave ๋ฒ„์ „์— pyenv ์„ค์น˜์‹œ zlib ์—๋Ÿฌ mojave ๋ฒ„์ „์— pyenv ํŠน์ • ๋ฒ„์ „ Install ํ• ์‹œ ์•„๋ž˜์™€ ๊ฐ™์€ ์—๋Ÿฌ๋ฅผ ๋ฐœ์ƒํ•œ๋‹ค. ์ด๋ถ€๋ถ„์„ ํ•ด๊ฒฐํ•˜๊ธฐ์œ„ํ•ด ์•„๋ž˜์™€ ๊ฐ™์ด ์‹คํ–‰ํ•˜๋ฉด ํ•ด๊ฒฐ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. shell >$ pyenv install 3.6.7 zipimport.ZipImportError: can't decompress data; zlib not available shell ์ƒ์—์„œ ์•„๋ž˜์™€ ๊ฐ™์€ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๋ฉด ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค. sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target / ์ฐธ๊ณ ๋งํฌ (macOS mojaveใงzlibใŒ่ฆ‹ใคใ‹ใ‚‰ใชใ„ๅ ดๅˆใฎๅฏพๅ‡ฆๆณ• ) 2019. 8. 22.
[Python] HTTP - ์ผ๋ฐ˜์ ์ธ Response Header ํŒŒ์‹ฑ ์ฝ”๋“œ(Lv.2) Python ์„ ์ด์šฉํ•œ HTTP ํŒจํ‚ท ํŒŒ์‹ฑํ•˜๊ธฐ 2ํšŒ์ฐจ HTTP ํŒจํ‚ท Header ํŒŒ์ผ์„ ํŒŒ์‹ฑํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. โ€ป Response Header ๋„ค์ด๋ฒ„ ๊ฒ€์ƒ‰ํ•˜๋Š” ํŒจํ‚ท Header ์ž…๋‹ˆ๋‹ค HTTP/1.1 200 OK X-Powered-By: BLOOD X-Frame-Options: SAMEORIGIN X-XSS-Protection: 1; mode=block Access-Control-Allow-Methods: GET, POST, OPTIONS Access-Control-Max-Age: 1000 Date: Tue, 22 Jan 2019 15:32:42 GMT Connection: keep-alive Transfer-Encoding: chunked โ€ป Response Header ํŒŒ์‹ฑ ์ฝ”๋“œ import o.. 2019. 8. 21.
[Python] HTTP - ์ผ๋ฐ˜์ ์ธ Request Header ํŒŒ์‹ฑ ์ฝ”๋“œ(Lv.1) Python ์„ ์ด์šฉํ•œ HTTP ํŒจํ‚ท ํŒŒ์‹ฑํ•˜๊ธฐ 1ํšŒ์ฐจ HTTP ํŒจํ‚ท Header ํŒŒ์ผ์˜ ํŒŒ์‹ฑํ•˜๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ๋ฅผ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. โ€ป Request Header ๋„ค์ด๋ฒ„ ๊ฒ€์ƒ‰ํ•˜๋Š” ํŒจํ‚ท Header ์ž…๋‹ˆ๋‹ค. GET /search.naver?where=nexearch&query=%EA%B0%95%EC%A0%95%ED%98%B8&ie=utf8&sm=tab_lve HTTP/1.1 Host: search.naver.com Connection: keep-alive Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safar.. 2019. 8. 15.
[Linux & Unix] i-number(์•„์ด๋…ธ๋“œ ๋ฒˆํ˜ธ)๋ฅผ ์ด์šฉํ•œ ํŒŒ์ผ/๋””๋ ‰ํ† ๋ฆฌ๋ช… ๋ณ€๊ฒฝ ํ•˜๊ธฐ Linux๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฒฝ์šฐ ํŒŒ์ผ๋ช… ํ˜น์€ ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ ํ•œ๊ธ€์ด๊ฑฐ๋‚˜ ์ธ์ฝ”๋”ฉ๋ฌธ์ œ๋กœ ๊นจ์ง„๊ฒฝ์šฐ ํŒŒ์ผ์„ ์—ด๊ฑฐ๋‚˜ ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ด๋™์ด ๋ถˆ๊ฐ€๋Šฅ ํ•˜๋‹ค. $ ls -ailt 193052529 drwxr-xr-x 3 root root 48 8์›” 14 12:12 . 159472457 drwxr-xr-x 5 root root 115 8์›” 14 12:12 .. 193052531 -rw-r--r-- 1 root root 0 8์›” 14 12:12 ํ…Œ์ŠคํŠธ.txt 201357184 drwxr-xr-x 2 root root 6 8์›” 14 12:12 ํ…Œํ…Œํ…Œ์ŠคํŠธ ๋งจ ์•ž์— ์žˆ๋Š” Number๊ฐ€ ํ•ด๋‹น ํŒŒ์ผ ๋ฐ ๋””๋ ‰ํ† ๋ฆฌ์˜ i-number(์•„์ด๋…ธ๋“œ ๋ฒˆํ˜ธ) ์ด๋‹ค. ๊ทธ๋Ÿด ๊ฒฝ์šฐ i-number(์•„์ด๋…ธ๋“œ ๋ฒˆํ˜ธ)๋ฅผ ์ด์šฉํ•˜์—ฌ ํŒŒ์ผ/๋””๋ ‰ํ† ๋ฆฌ๋ช…์„ ๋ณ€๊ฒฝํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค... 2019. 8. 14.
[Python] regex ๊ฐ’์„ dict ๋กœ ๊ฐ€์ ธ์˜ค๊ธฐ Regex ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ Groupํ™” ํ•˜์—ฌ dict ํ˜•ํƒœ๋กœ ์ถœ๋ ฅํ•˜๋ ค๋ฉด ๊ธฐ๋ณธ์ ์œผ๋กœ Python ์— Regex ์ด๋ฆ„๊ทœ์น™์„ ์ง€์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•๋ถ€ํ„ฐ ์•Œ์•„๋ณด์ž. 1. Regex ๋ฅผ ์ผ๋ฐ˜์ ์ธ ๋งค์นญ import re value = "์ด๋ฆ„" compile_regex = re.compile(".*?$") ret_value = compile_regex.match(value) if ret_value: print("Match") else: print("Not Match") ์ถœ๋ ฅ: Match 2. regex ๊ทธ๋ฃนํ™” ์ถœ๋ ฅํ•˜๊ธฐ import re value = "์ด๋ฆ„" compile_regex = re.compile("(.*?)$") ret_value = compile_regex.search(value) if ret_value: prin.. 2019. 8. 12.
[PostgreSQL] pg_hba.conf ์„ค๋ช… ์„ค์ • ๋ฐฉ๋ฒ• pg_hba.conf์—์„œ IPv4 ์„ค์ •๋ถ€๋ถ„์„ ์ฐพ์•„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ˆ˜์ • # TYPE DATABASE USER ADDRESS METHOD host all all 192.168.2.2/32 md5 #localhost ํŒจ์Šค์›Œ๋“œ ์ ‘๊ทผ local all all peer ์šฉ์–ด ์„ค๋ช… type ์ ‘๊ทผ์ž์˜ ์œ„์น˜์™€ ํ†ต์‹ ์˜ ์•”ํ˜ธํ™” ๊ด€๋ จ ์„ค์ •. local : Unix domain socket (๋‚ด๋ถ€ ํ”„๋กœ์„ธ์Šค๊ฐ„ tcp๋˜๋Š” udp ํ”„๋กœํ† ์ฝœ์„ ์ด์šฉํ•œ ํ†ต์‹ )์„ ์ด์šฉํ•œ ์—ฐ๊ฒฐ. host : tcp/ip ์ด์šฉํ•œ ์—ฐ๊ฒฐ. postgres.conf์—์„œ listen_address ์„ค์ •์ด ์„ ํ–‰๋˜์–ด์•ผ ํ•œ๋‹ค. hostssl : ์˜ค์ง ssl์„ ์ด์šฉํ•œ tcp/ip ์—ฐ๊ฒฐ. hostnossl : ์˜ค์ง ssl์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” tcp/ip ์—ฐ๊ฒฐ. data.. 2019. 8. 12.
[PostgreSQL] ์žฌ๊ธฐ๋™ ์—†์ด Config Reload ๊ฐœ์ธ ํ…Œ์ŠคํŠธ ๋ฒ„์ „์€ 10 ๊ธฐ์ค€์œผ๋กœ ํ•œ๋‹ค. ์ฟผ๋ฆฌ(Query)๋ฅผ ํ™œ์šฉํ•œ Reload shell>> su - postgres shell>> psql psql >> select pg_reload_conf() ๋ช…๋ น์–ด(Command)๋ฅผ ํ™œ์šฉํ•œ Reload shell>> pg_ctl reload -D Datbasae๊ฒฝ๋กœ Database(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค) ๊ฒฝ๋กœ์˜ ๊ฒฝ์šฐ postgresql.conf ์˜ ์œ„์น˜ ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•˜๋ฉด ๋œ๋‹ค. ๊ธฐ๋ณธ๊ฒฝ๋กœ : /var/lib/pgsql/10/data 2019. 8. 12.
[MySQL] Union Query(์œ ๋‹ˆ์˜จ ์ฟผ๋ฆฌ)๋ฅผ ์ด์šฉํ•œ ๊ฒฐ๊ณผ๊ฐ’ ํ•ฉ์น˜๊ธฐ(Sum) ์ฟผ๋ฆฌ(Query)๋ฌธ์„ ์ด์šฉํ•˜์—ฌ ๊ฐ๊ฐ Count๋ฅผ ์ถœ๋ ฅํ•˜์—ฌ Code์ƒ์—์„œ ํ•ฉ(sum)์„ ํ•  ์ˆ˜๋„ ์žˆ์œผ๋‚˜, Union ์‚ฌ์šฉํ•˜์—ฌ Count ๊ฐ’๋งŒ ๊ฐ€์ง€์™€์„œ Sum์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋•Œ ์•„๋ž˜์™€ ๊ฐ™์ด ์‚ฌ์šฉํ•จ์œผ๋กœ ๊ฒฐ๊ณผ๊ฐ’์— ๋Œ€ํ•œ Sum์„ ํ•˜์—ฌ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ๋‹ค. # tb_user Count query> SELECT COUNT(*) as CNT FROM tb_user 10 # tb_admin Count query> SELECT COUNT(*) as CNT FROM tb_admin 3 # ๋‘ ํ…Œ์ด๋ธ” ํ•ฉ์นœ Count query> SELECT SUM(cnt) FROM ( SELECT COUNT(*) as CNT FROM tb_user UNION ALL SELECT COUNT(*) as CNT FROM tb_admin ) ad.. 2019. 8. 7.
[MySQL/MariaDB] Table Lock(ํ…Œ์ด๋ธ” ๋ฝ) ํ™•์ธ ๋ฐ ํ•ด์ œ ํ•˜๊ธฐ MySQL/MariaDB์„ ์‚ฌ์šฉํ•˜๋‹ค๋ณด๋ฉด ์‹ค์ˆ˜ ํ˜น์€ ์–ด๋– ํ•œ ์ด์œ ๋กœ ์ธํ•ด Table(ํ…Œ์ด๋ธ”)์— Lock(๋ฝ)์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์ด๋•Œ, Lock์ด ๋ฐœ์ƒํ•œ Table ํ™•์ธ ๋ฐ Lock ํ•ด์ œ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋‹ค. ์šฐ์„  ๊ฐ„๋žตํ•˜๊ฒŒ ํ™•์ธ ๋ฐ ํ•ด์ œ์— ๋Œ€ํ•ด์„œ ํ™•์ธํ•ด ๋ณด์ž. 1. Lock Table ํ™•์ธ SQL> SHOW FULL PROCESSLIST; Id User Host db Command Time State 507390 dev 127.0.0.1:60635 dev Query 1000 Waiting for table metadata lock ์œ„์™€ ๊ฐ™์ด State ์ปฌ๋Ÿผ์— "Waiting for table metadata lock" ์œผ๋กœ ์ธํ•ด ํ•ด๋‹น Table์— ๋Œ€ํ•ด์„œ ์ฟผ๋ฆฌ๊ฐ€ ์ง„ํ–‰๋˜์ง€ ์•Š์Œ์„ ํ™•์ธ ๊ฐ€๋Šฅ ํ•˜๋‹ค. 2. Lock.. 2019. 7. 24.
[Python] ํ™€์ˆ˜, ์ง์ˆ˜ ๋‚˜๋ˆ„๊ธฐ %(๋‚˜๋ˆ„๊ธฐ)๋ฅผ ํ†ตํ•ด์„œ ํ™€์ˆ˜, ์ง์ˆ˜๋ฅผ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋‹ค # -*- coding: utf-8 -*- if __name__ == '__main__': for i in range(0, 10): print i if (i % 2) == 1: print("ํ™€์ˆ˜์ž…๋‹ˆ๋‹ค.") else: print("์ง์ˆ˜์ž…๋‹ˆ๋‹ค.") # ๊ฒฐ๊ณผ 0 ์ง์ˆ˜์ž…๋‹ˆ๋‹ค. 1 ํ™€์ˆ˜์ž…๋‹ˆ๋‹ค. 2 ์ง์ˆ˜์ž…๋‹ˆ๋‹ค. 3 ํ™€์ˆ˜์ž…๋‹ˆ๋‹ค. 4 ์ง์ˆ˜์ž…๋‹ˆ๋‹ค. 5 ํ™€์ˆ˜์ž…๋‹ˆ๋‹ค. 6 ์ง์ˆ˜์ž…๋‹ˆ๋‹ค. 7 ํ™€์ˆ˜์ž…๋‹ˆ๋‹ค. 8 ์ง์ˆ˜์ž…๋‹ˆ๋‹ค. 9 ํ™€์ˆ˜์ž…๋‹ˆ๋‹ค. 2019. 7. 13.
[๊ฐœ๋ฐœ์ž์˜์–ด] ์ƒ์„ฑํ•˜๋‹ค :: create vs generate ๊ฐœ๋ฐœ์‹œ ํด๋ž˜์Šค, ํ•จ์ˆ˜์— ์‚ฌ์šฉํ•  ๋‹จ์–ด๋ฅผ ์„ ํƒํ• ๋•Œ ์˜์–ด ๋‹จ์–ด ์„ ํƒ์ด ํ˜ผ๋ž€์Šค๋Ÿฌ์šธ๋•Œ๊ฐ€ ์žˆ์–ด ๊ฐ„๋žตํžˆ ์ •๋ฆฌํ•œ๋‹ค. create vs generate -> ํ•œ๊ธ€๋กœ "์ƒ์„ฑํ•˜๋‹ค" ๋ผ๋Š” ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค, ํ•˜์ง€๋งŒ ์˜์–ด ๋‹จ์–ด ์˜๋ฏธ๋กœ๋Š” ์กฐ๊ธˆ ๋‹ค๋ฅธ๊ฒŒ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋‹ค. 1. create -> ์•„๋ฌด๊ฒƒ๋„ ํ•˜์ง€ ์•Š์€ ๋ฌด์–ธ๊ฐ€๋ฅผ ์ƒ์„ฑ(์ฐฝ์กฐ) ํ•˜๋Š” ๊ฒƒ 2. generate -> ์–ด๋–ค ํ–‰๋™(์ž๋™ํ™”)๋ฅผ ํ†ตํ•ด ์ƒ์„ฑ ํ•˜๋Š” ๊ฒƒ ์ฐธ๊ณ  : https://wikidiff.com/generate/create 2019. 7. 6.
[๊ฐœ๋ฐœ์ž์˜์–ด] ๋ชจ์œผ๋‹ค :: collect vs gather ๊ฐœ๋ฐœ์‹œ ํด๋ž˜์Šค, ํ•จ์ˆ˜์— ์‚ฌ์šฉํ•  ๋‹จ์–ด๋ฅผ ์„ ํƒํ• ๋•Œ ์˜์–ด ๋‹จ์–ด ์„ ํƒ์ด ํ˜ผ๋ž€์Šค๋Ÿฌ์šธ๋•Œ๊ฐ€ ์žˆ์–ด ๊ฐ„๋žตํžˆ ์ •๋ฆฌํ•œ๋‹ค. collect vs gather -> ํ•œ๊ธ€๋กœ "๋ชจ์œผ๋‹ค" ๋ผ๋Š” ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค, ํ•˜์ง€๋งŒ ์˜์–ด ๋‹จ์–ด ์˜๋ฏธ๋กœ๋Š” ์กฐ๊ธˆ ๋‹ค๋ฅธ๊ฒŒ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋‹ค. 1. collect -> ์›ํ•˜๋Š”๊ฒƒ์„ ์„ ๋ณ„ํ•˜์—ฌ ๋ชจ์„๋•Œ 2. gather -> ํฉ์–ด์ ธ์žˆ๋Š” ๋‚ด์šฉ๋“ค์„ ๋ชจ์„๋•Œ(์ผ๋‹จ, ์ „์ฒด์ ์œผ๋กœ ๋ชจ์œผ๋‹ค) ์ฐธ๊ณ  : https://wikidiff.com/gather/collect 2019. 7. 2.
[Burp Suite] Android(์•ˆ๋“œ๋กœ์ด๋“œ) Burp Suite ์ธ์ฆ์„œ ์„ค์น˜ Android์—์„œ Burp Suite๋ฅผ ์ด์šฉํ•˜์—ฌ Proxy๋ฅผ ์„ค์ •ํ•˜์—ฌ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹ค๋งŒ, HTTPSํ†ต์‹ ์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Burp ์ธ์ฆ์„œ๋ฅผ Android์— ์„ค์น˜๋ฅผ ํ•ด์•ผ HTTPS ํ†ต์‹ ์˜ ํŠธ๋ ˆํ”ฝ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค. 1. Burp Suite์—์„œ ์ธ์ฆ์„œ ํŒŒ์ผ ์ถ”์ถœ Proxy ํด๋ฆญ -> Options ํด๋ฆญ -> Import / export CA certificate ํด๋ฆญ -> Export ํ•˜์œ„ Certificate in DER format ์„ ํƒ ํ›„ Next ํด๋ฆญ -> ๋‹ค์šด๋กœ๋“œ ํด๋” ์„ ํƒ ํ›„ ์ €์žฅ(ex. cacert.cer) 2. adb๋ฅผ ํ†ตํ•ด ์ธ์ฆ์„œ push $ adb push cacert.cer /sdcard cacert.cer: 1 file pushed. 0.0 MB/s (973 bytes in .. 2019. 7. 1.
[Redis] Redis(๋ ˆ๋””์Šค) ์™ธ๋ถ€ ์ ‘์†(bind) ํ—ˆ์šฉ ์„ค์ • / Port ์„ค์ • / ์•”ํ˜ธ ์„ค์ • Redis(๋ ˆ๋””์Šค)๋ฅผ yum ํ˜น์€ source๋กœ ์„ค์น˜ ํ›„ ์— ๊ตฌ๋™์„ ํ•ด๋ณด๋ฉด ๊ธฐ๋ณธ์ ์œผ๋กœ 127.0.0.1:6379 ๋กœ ๊ตฌ๋™๋˜์–ด ์žˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. 1. ์™ธ๋ถ€ ์ ‘์† ํ—ˆ์šฉ ์„ค์ • Redis(๋ ˆ๋””์Šค) ์„ค์น˜ ํ›„ /etc/redis.conf(๊ฐ„ํ˜น ๊ฒฝ๋กœ๊ฐ€ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Œ) ํŒŒ์ผ์—์„œ bind์— ์„ค์ •๋˜์–ด์žˆ๋Š” "bind 127.0.0.1" ์„ ์ œ๊ฑฐ ํ˜น์€ ์ฃผ์„ ํ›„ "bind 0.0.0.0" ์œผ๋กœ ์„ค์ • ํ›„ Redis ์„œ๋น„์Šค๋ฅผ ์žฌ๊ธฐ๋™ ํ•ด๋ณด์ž 2. Port ์„ค์ • 1๋ฒˆ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ /etc/redis.conf ํŒŒ์ผ์—์„œ port์— ์„ค์ •๋˜์–ด์žˆ๋Š” "port 6379" ๋ฅผ ์ œ๊ฑฐ ํ˜น์€ ์ฃผ์„ ํ›„ "port ์›ํ•˜๋Š” ํฌํŠธ๋ฒˆํ˜ธ" ๋กœ ์„ค์ • ํ›„ Redis ์„œ๋น„์Šค๋ฅผ ์žฌ๊ธฐ๋™ ํ•ด๋ณด์ž 3. ์•”ํ˜ธ ์„ค์ • 1๋ฒˆ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ /etc/redis.conf ํŒŒ์ผ์—์„œ.. 2019. 6. 12.
[Linux] ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•œ 32Bit / 64Bit ํ™•์ธ ๋ฆฌ๋ˆ…์Šค(Linux)์— ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„ค์น˜ํ•˜๋Š” ๊ฒฝ์šฐ 32Bit(๋น„ํŠธ) ์ธ์ง€ 64Bit(๋น„ํŠธ)์ธ์ง€ ํ™•์ธํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์š”์ƒˆ ๋‚˜์˜ค๋Š” ์žฅ๋น„์— OS ์„ค์น˜ํ•˜๋Š” ๊ฒฝ์šฐ ๋Œ€๋ถ€๋ถ„์€ 64Bit๋กœ ์„ค์น˜๋˜๊ณ  ์žˆ์œผ๋‚˜, 32bit์ธ ๊ฒฝ์šฐ๋„ ์žˆ์–ด ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์ž 1. getconf LONG_BIT 1.1 64Bit $ getconf LONG_BIT 64 1.2 32 Bit $ getconf LONG_BIT 32 2. arch 2.1 64 Bit $ arch x86_64 2.2 32 Bit $ arch i386 or i686 3. uname 3.1 64 Bit $ uname -m x86_64 3.2 32 Bit $ uname -m i386 or i686 4 $HOSTTYPE 4.1 64 Bit $ echo $HOSTTYP.. 2019. 6. 7.
[Mac] Mac OS ๋ชจํ•˜๋น„(Mojave) Dock ์ตœ๊ทผ ์‚ฌ์šฉ ์‘์šฉํ”„๋กœ๊ทธ๋žจ ์ œ๊ฑฐ Mac OS ๋ชจํ•˜๋น„(Mojave)๋ฅผ ์‚ฌ์šฉ์‹œ์— ๋”ฐ๋กœ ์„ค์ •ํ•˜์ง€ ์•Š์œผ๋ฉด, Dock์— ๊ณ„์†์ ์œผ๋กœ ์ตœ๊ทผ ์‚ฌ์šฉํ•œ ์‘์šฉํ”„๋กœ๊ทธ๋žจ๋“ค์ด ๋‚จ๊ฒจ์ง„๋‹ค. ๋ถˆํ•„์š”ํ•˜๊ฒŒ ์ƒ๊ธฐ๋Š”๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ณ ์ž ์•„๋ž˜์™€ ๊ฐ™์ด ์„ค์ •์‹œ ์ด์™€ ๊ฐ™์€ ๋‚ด์šฉ์€ ํ•ด๊ฒฐ ํ•  ์ˆ˜ ์žˆ๋‹ค. 1. ์‹œ์Šคํ…œ ํ™˜๊ฒฝ์„ค์ • -> Dock -> Dock์—์„œ ์ตœ๊ทผ ์‚ฌ์šฉํ•œ ์‘์šฉํ”„๋กœ๊ทธ๋žจ ๋ณด๊ธฐ ๋น„ํ™œ์„ฑํ™” ์œ„ ์„ค๋ช… ๋ฐ ์ด๋ฏธ์ง€์™€ ๊ฐ™์ด ๋น„ํ™œ์„ฑํ™”์‹œ Dock์— ์„ค์ •ํ•œ ์‘์šฉํ”„๊ทธ๋žจ๋“ค๋งŒ ๋‚˜ํƒ€๋‚˜๊ฒŒ ๋œ๋‹ค. 2019. 6. 3.
[Python] ์—ฐ์‚ฐ์ž ์ •๋ฆฌ Python์—์„œ ์‚ฌ์šฉํ•˜๊ณ  ์—ฐ์‚ฐ์ž์— ๋Œ€ํ•ด์„œ ๊ฐ„๋žตํžˆ ์ •๋ฆฌ ํ•˜์˜€๋‹ค. 1. ๊ด€๊ณ„ ์—ฐ์‚ฐ์ž ์—ฐ์‚ฐ์ž ์„ค๋ช… > ํฌ๋‹ค = ํฌ๊ฑฐ๋‚˜ ๊ฐ™๋‹ค >> 3 > 1 True >>> 1 > 3 False >>> 1 >> 3 >> 3 >= 2 True >>> 3 >= 3 True >>> 3 >= 4 False >>> 4 >> 4 >> 4 >> 5 == 5 True >>> 5 != 6 True >>> a = 5 >>> b = 6 >>> a == b False >>> a != b True 2. Bool ์—ฐ์‚ฐ์ž ์—ฐ์‚ฐ์ž ์„ค๋ช… not X X๊ฐ€ ๊ฑฐ์ง“์ด๋ฉด True, ์•„๋‹ˆ๋ฉด False X and Y X๊ฐ€ ๊ฑฐ์ง“์ด๋ฉด X, ์•„๋‹ˆ๋ฉด Y X or Y X๊ฐ€ ์ฐธ์ด๋ฉด X, ์•„๋‹ˆ๋ฉด Y >>> a = 20 >>> b = 30 >>>.. 2018. 9. 23.
[Python] ์ž๋ฃŒํ˜• ํ™•์ธ Python์—์„œ ๋ณ€์ˆ˜๋ฅผ ์ •์˜ํ• ๋•Œ ๊ฐ ์ž๋ฃŒํ˜•์— ๋”ฐ๋ผ ์ •์˜๋ฅผ ํ•˜๊ณ  ์žˆ์ง€ ์•Š์œผ๋‚˜, ํ•จ์ˆ˜, ์กฐ๊ฑด๋ฌธ๋“ฑ์„ ์‚ฌ์šฉ์‹œ์— ๋™์ผ ์ž๋ฃŒํ˜•์ด ์•„๋‹Œ ๊ฒฝ์šฐ ์ •์ƒ์ ์œผ๋กœ ์ฒ˜๋ฆฌ ํ•  ์ˆ˜ ์—†์Œ์— ๋”ฐ๋ผ ๋‚ด์žฅํ•จ์ˆ˜์ธ type์„ ์ด์šฉํ•ด ๊ฐ ์ž๋ฃŒํ˜•์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค. 1. ๋ฌธ์ž์—ด >>> type('abc') >>> type('') 2. ์ •์ˆ˜ํ˜• >>> type(123) 3. None >>> type(None) 4. ์‚ฌ์ „ํ˜•(Dict) >>> type({}) 5. ๋ฆฌ์ŠคํŠธ(List) >>> type([]) 6. ํŠœํ”Œ(Tuple) >>> type(()) 7. ๊ธฐํƒ€ ์ž๋ฃŒํ˜• ๋น„๊ต >>> import types >>> dir(types) ['BooleanType', 'BufferType', 'BuiltinFunctionType', 'BuiltinMethodTy.. 2018. 9. 23.
728x90
300x250

loading