[Linux] Shell Script๋ฅผ ์ด์šฉํ•˜์—ฌ ๋„คํŠธ์›Œํฌ IP ์„ค์ •
ยท
Linux
ํ•„์š”ํ•œ ์ •๋ณด# ๋ฐ๋น„์•ˆ ๊ณ„์—ด์—์„œ ๋„คํŠธ์›Œํฌ ์„ค์ • ๋ฐฉ๋ฒ•18.04 LTS ๋ฒ„์ „๋ถ€ํ„ฐ netplan ํŒŒ์ผ ์„ค์ •์œผ๋กœ ๋ณ€๊ฒฝ# ํŽ˜๋„๋ผ ๊ณ„์—ด์—์„œ ๋„คํŠธ์›Œํฌ ์„ค์ • ๋ฐฉ๋ฒ•8 ๋ฒ„์ „๋ถ€ํ„ฐ nmcli ๋ช…๋ น์–ด๋ฅผ ์ด์šฉํ•˜์—ฌ ์„ค์ •# ๋„คํŠธ์›Œํฌ IP ์„ค์ • ์‹œ ํ•„์š”ํ•œ ์ •๋ณด๋“คNetwork Interface NameIP/CIDRGatewayDNS์Šคํฌ๋ฆฝํŠธ#!/bin/bashostype=$(cat /etc/*releas | grep ID_LIKE | sed "s/ID_LIKE=//;s/\"//g")echo "=== Network Devices ==="ip a | grep '^[0-9]' | awk '{print $1" " $2}' | grep -v -e 'lo' -e 'v' -e 't'read -p "Please input network interface..
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์Šคํ‚ฌํŠธ๋ฆฌ/Python - Lv.2
ยท
Coding Test/Algorithms
โ“๋ฌธ์ œhttps://school.programmers.co.kr/learn/courses/30/lessons/49993 ํ”„๋กœ๊ทธ๋ž˜๋จธ์ŠคSW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก์˜ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„programmers.co.kr๋ฌธ์ œ ์„ค๋ช…์„ ํ–‰ ์Šคํ‚ฌ์ด๋ž€ ์–ด๋–ค ์Šคํ‚ฌ์„ ๋ฐฐ์šฐ๊ธฐ ์ „์— ๋จผ์ € ๋ฐฐ์›Œ์•ผ ํ•˜๋Š” ์Šคํ‚ฌ์„ ๋œปํ•ฉ๋‹ˆ๋‹ค.์˜ˆ๋ฅผ ๋“ค์–ด ์„ ํ–‰ ์Šคํ‚ฌ ์ˆœ์„œ๊ฐ€ ์ŠคํŒŒํฌ → ๋ผ์ดํŠธ๋‹ ๋ณผํŠธ → ์ฌ๋”์ผ๋•Œ, ์ฌ๋”๋ฅผ ๋ฐฐ์šฐ๋ ค๋ฉด ๋จผ์ € ๋ผ์ดํŠธ๋‹ ๋ณผํŠธ๋ฅผ ๋ฐฐ์›Œ์•ผ ํ•˜๊ณ , ๋ผ์ดํŠธ๋‹ ๋ณผํŠธ๋ฅผ ๋ฐฐ์šฐ๋ ค๋ฉด ๋จผ์ € ์ŠคํŒŒํฌ๋ฅผ ๋ฐฐ์›Œ์•ผ ํ•ฉ๋‹ˆ๋‹ค.์œ„ ์ˆœ์„œ์— ์—†๋Š” ๋‹ค๋ฅธ ์Šคํ‚ฌ(ํž๋ง ๋“ฑ)์€ ์ˆœ์„œ์— ์ƒ๊ด€์—†์ด ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ŠคํŒŒํฌ → ํž๋ง → ๋ผ์ดํŠธ๋‹ ๋ณผํŠธ → ์ฌ๋”์™€ ๊ฐ™์€ ์Šคํ‚ฌํŠธ๋ฆฌ๋Š” ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ์ฌ๋” → ์ŠคํŒŒํฌ๋‚˜ ๋ผ์ดํŠธ๋‹ ๋ณผํŠธ → ์ŠคํŒŒํฌ..
[Linux] Shell Script๋ฅผ ์ด์šฉํ•˜์—ฌ ํŒจํ‚ค์ง€ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋‹ค์šด๋กœ๋“œ
ยท
Linux
๋”๋ณด๊ธฐ๋”๋ณด๊ธฐ์ฒ˜์Œ ๋ฐฐ์šฐ๋Š” ์…ธ ์Šคํฌ๋ฆฝํŠธ ์ฑ… ์ฐธ๊ณ ํŒจํ‚ค์ง€ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋‹ค์šด๋กœ๋“œํšŒ์‚ฌ ๋‚ด๋ถ€์— ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค๊ณ  ํ•จ. โžก๏ธ ์ธํ„ฐ๋„ท์ด ๋˜๋Š” DMZ ๊ตฌ๊ฐ„์˜ ์„œ๋ฒ„์—์„œ ์™ธ๋ถ€ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์™€ ๋‚ด๋ถ€ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์ •๊ธฐ์ ์œผ๋กœ ๋™๊ธฐํ™”ํ•ด์•ผ ํ•จ.ํ•„์š”ํ•œ ๋ช…๋ น์–ด# ํŒจํ‚ค์ง€ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋™๊ธฐํ™” ๋ช…๋ น์–ดreposync# ๋””๋ ‰ํ† ๋ฆฌ ๋ฆฌํฌ์ง€ํ† ๋ฆฌํ™”ํ•˜๋Š” ๋ช…๋ น์–ดcreaterepo์Šคํฌ๋ฆฝํŠธ#!/bin/bashrepolist=$1repopath=/var/www/html/repo/osversion=$(cat /etc/redhat-release | awk '{print $(NF-1)}')if [[ -z $1 ]]then echo "Please input repository list. You can get repository from [yum re..
[Linux] Shell Script๋ฅผ ์ด์šฉํ•˜์—ฌ Timezone ์„ค์ •
ยท
Linux
๋”๋ณด๊ธฐ๋”๋ณด๊ธฐ์ฒ˜์Œ ๋ฐฐ์šฐ๋Š” ์…ธ ์Šคํฌ๋ฆฝํŠธ ์ฑ… ์ฐธ๊ณ ๋‹ค์ˆ˜์˜ ์„œ๋ฒ„์— Timezone ์„ค์ •ํ•„์š”ํ•œ ๋ช…๋ น์–ด# Timezone์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•œ ๋ช…๋ น์–ดdatetimectl staus# Timezone์„ ์„ค์ •ํ•˜๊ธฐ ์œ„ํ•œ ๋ช…๋ น์–ดdateimectl set-timezone์Šคํฌ๋ฆฝํŠธ#!/bin/bashservers="host01 host02 host03"cmd1="timedatectl status | grep 'Time zone'"cmd2="timedatectl set-timezone $1"if [[ -z $1 ]] || [[ -z $1 ]]then echo -e 'Please input timezone and password\nUsage: sh set-timezone.sh Seoul/Asia password'fifor s..
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋ฐฉ๋ฌธ ๊ธธ์ด/Python - Lv.2
ยท
Coding Test/Algorithms
โ“๋ฌธ์ œhttps://school.programmers.co.kr/learn/courses/30/lessons/49994 ํ”„๋กœ๊ทธ๋ž˜๋จธ์ŠคSW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก์˜ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„programmers.co.kr๋ฌธ์ œ ์„ค๋ช…๊ฒŒ์ž„ ์บ๋ฆญํ„ฐ๋ฅผ 4๊ฐ€์ง€ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ์›€์ง์ด๋ ค ํ•ฉ๋‹ˆ๋‹ค. ๋ช…๋ น์–ด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.U: ์œ„์ชฝ์œผ๋กœ ํ•œ ์นธ ๊ฐ€๊ธฐD: ์•„๋ž˜์ชฝ์œผ๋กœ ํ•œ ์นธ ๊ฐ€๊ธฐR: ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ ์นธ ๊ฐ€๊ธฐL: ์™ผ์ชฝ์œผ๋กœ ํ•œ ์นธ ๊ฐ€๊ธฐ์บ๋ฆญํ„ฐ๋Š” ์ขŒํ‘œํ‰๋ฉด์˜ (0, 0) ์œ„์น˜์—์„œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์ขŒํ‘œํ‰๋ฉด์˜ ๊ฒฝ๊ณ„๋Š” ์™ผ์ชฝ ์œ„(-5, 5), ์™ผ์ชฝ ์•„๋ž˜(-5, -5), ์˜ค๋ฅธ์ชฝ ์œ„(5, 5), ์˜ค๋ฅธ์ชฝ ์•„๋ž˜(5, -5)๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.์ด๋•Œ, ์šฐ๋ฆฌ๋Š” ๊ฒŒ์ž„ ์บ๋ฆญํ„ฐ๊ฐ€ ์ง€๋‚˜๊ฐ„ ๊ธธ ์ค‘ ์บ๋ฆญํ„ฐ๊ฐ€ ์ฒ˜์Œ ๊ฑธ์–ด๋ณธ ๊ธธ์˜ ๊ธธ..
[๋ฐฑ์ค€] 11401. ์ดํ•ญ ๊ณ„์ˆ˜ 3/Python - Gold1
ยท
Coding Test/Algorithms
โ“๋ฌธ์ œhttps://www.acmicpc.net/problem/11401์„ฑ๋Šฅ ์š”์•ฝ๋ฉ”๋ชจ๋ฆฌ: 32412 KB, ์‹œ๊ฐ„: 872 ms๋ฌธ์ œ ์„ค๋ช…์ž์—ฐ์ˆ˜ N๊ณผ ์ •์ˆ˜ K๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ ์ดํ•ญ ๊ณ„์ˆ˜ (N K)๋ฅผ 1,000,000,007๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.โœ๐Ÿปํ’€์ดํŽ˜๋ฅด๋งˆ์˜ ์†Œ์ •๋ฆฌ๋ฅผ ์ด์šฉํ•ด์•ผ์ง€ ํ’€๋ฆฌ๋Š” ๋ฌธ์ œ์ด๋‹ค.ํŽ˜๋ฅด๋งˆ์˜ ์†Œ์ •๋ฆฌ๋Š” MOD๊ฐ€ ์†Œ์ˆ˜์ผ ๋•Œ a^p = a % p๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ, ์–‘๋ณ€์„ a²์œผ๋กœ ๋‚˜๋ˆ„๋ฉด a^(p-2) = 1 / a % p๊ฐ€ ๋œ๋‹ค.๐Ÿ’ป์ฝ”๋“œimport sysinput = sys.stdin.readlineMOD = 1000000007def fact(N): if N ๐Ÿ“ํ›„๊ธฐ๋ถ„ํ• ์ •๋ณต ๋ฌธ์ œ๋ผ๊ณ  ํ•ด์„œ ํŒŒ์Šค์นผ ์‚ผ๊ฐ์ •๋ฆฌ ์ƒ๊ฐํ•ด์„œ ์ž‘์„ฑํ–ˆ๋Š”๋ฐ ๋ฉ”๋ชจ๋ฆฌ ์ดˆ๊ณผ ... ใ…Žใ…Ž์—ญ์‹œ ๊ณจ๋“œ ๋ฌธ์ œ๋Š” ๋‹ค๋ฅด๋‹ค...