Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ターミナルと仲良くなろう / Let's get to know the terminal.
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
kubo-sr
November 13, 2020
0
24
ターミナルと仲良くなろう / Let's get to know the terminal.
kubo-sr
November 13, 2020
Tweet
Share
More Decks by kubo-sr
See All by kubo-sr
現代的 PHP アプリの作り方 / How to build a modern PHP application
kubosr
0
40
サービスを継続させるために / What we can do to keep the service going
kubosr
0
48
Featured
See All Featured
HDC tutorial
michielstock
1
390
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
150
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
160
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
83
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
69
How to train your dragon (web standard)
notwaldorf
97
6.5k
Un-Boring Meetings
codingconduct
0
200
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
BBQ
matthewcrist
89
10k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
97
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
250
Transcript
λʔϛφϧͱྑ͘ͳΖ͏
λʔϛφϧͱ
λʔϛφϧͱ • Terminal.app ͳͲ • 19xx ɺਓίϯιʔϧ͔Βί ϯϐϡʔλʔʹଓ͍ͯͨ͠ • ʹ͋ΔͷͰλʔϛφϧ
• Terminal.app ΤϛϡϨʔλʔ
λʔϛφϧͱ γΣϧ • λʔϛφϧΛ։͘ͱσϑΥϧτ γΣϧ͕ىಈ͢Δ • Χʔωϧ (OS ຊମ) ͱϢʔβʔͷ
ೖग़ྗΛհͯ͘͠ΕΔ • Bourne Shell ͷੜ͕Α͘Θ ΕΔ (ash, ksh, bash...) • macOS ͷσϑΥϧτ zsh (10.15 ~)
λʔϛφϧͱ ίϚϯυ • POSIX ඪ४ʹجຊίϚϯυҰཡ͕ ͋Δ • ls, cd ͳͲ
• ͜ΕΛ͓΅͓͚͑ͯͳΜͱ͔ ͳΔ • ୳͢ͷେมͳͷͰ Wikipedia • ࣮ߦ͢Δͱޭɾࣦഊ͕Θ͔Δ • $? • echo $?
λʔϛφϧͱ ύʔϛογϣϯ • ϑΝΠϧϑΥʔϚοτͱผʹ ࣮ߦͰ͖Δ͔Ͳ͏͔ܾΊΔཁૉ͕ ͋Δ • ύʔϛογϣϯ • read
- write - execute Λ 3bit Ͱ ཧ • σΟϨΫτϦͷ execute ͦͷ σΟϨΫτϦ (ͱத) ʹΞΫη εͰ͖Δ͔
λʔϛφϧͱ ॴ༗ऀ • ͯ͢ͷϑΝΠϧॴ༗ऀ (User) ͱάϧʔϓ (Group) ͕͋Δ • ॴ༗ऀɺάϧʔϓɺͦͷଞʹର͠
ͯઌͷݖݶΛࢦఆ͢Δ • ͳͷͰ 9bit ͬͯදݱͰ͖Δ
User - Group - Other
λʔϛφϧͷ͍ํ
λʔϛφϧͷ͍ํ ڥม • ࡞ۀσΟϨΫτϦ pwd ίϚϯυͰΘ ͔Δ • Α͘ΘΕΔσΟϨΫτϦ͕͋Δ •
Filesystem Hierarchy Standard • hier(7) • ϑΝΠϧ ύε (ϑΝΠϧͷͨͲΓண ͖ํ) Λ͏·͓͘͏ • ૬ରύε (࡞ۀσΟϨΫτϦ͔ΒΈ ͨύε) • ઈରύε (/ ͔ΒΈͨύε)
λʔϛφϧͷ͍ํ ϚχϡΞϧ • ίϚϯυʹݶΒͣͯ͢ॻ͔Εͯ ͍Δ • man(1) ίϚϯυʹΑΓݟΕΔ • man
keyword • ׳शͱͯ͠Ωʔϫʔυͷޙʹׅހ ͱࣈͰηΫγϣϯΛࣔ͢ • ηΫγϣϯҰཡ͕ man(1) ʹ͋ Δ
λʔϛφϧͷ͍ํ ऴྃ • ίϚϯυΛ࣮ߦ͢Δͱ (ॲཧ͕ऴ ྃ͠ͳ͚Ε) ಈ͖ଓ͚Δ • ॲཧ͕ऴΘͬͯػ͢Δͱ͖
• ͦΕͰऴΘΒ͍ͤͨͱ͖ίϚ ϯυʹରͯ͠γάφϧΛૹ৴ͯ͠ ऴΘΒͤΑ͏
λʔϛφϧͷ͍ํ γάφϧ • ϓϩάϥϜʹಛఆͷಈ࡞Λཁٻ͢ Δ੍ޚίʔυ • λʔϛφϧ্Ͱ Ctrl ͱΩʔΛΈ ߹Θͤͯૹ৴Ͱ͖Δ
• (Foreground ͷΈ) • ϓϩάϥϜΛऴ͍ྃͤͨ͞ͱ͖ Ctrl + C • kill ίϚϯυͰૹ৴Ͱ͖Δ
λʔϛφϧͷ͍ํ ੍ޚจࣈ • λʔϛφϧ্Ͱೖྗͨ͠γάφϧͷ࣮ମ ੍ޚจࣈ • ASCII ͰΞϧϑΝϕοτΑΓલʹఆٛ͞Εͯ ͍Δ •
λʔϛφϧ্Ͱ Ctrl ͱڞʹ ASCII จࣈΛೖ ྗ͢Δͱ্Ґ 3 Ϗοτ͕མͱ͞ΕΔ (-0x40) • D (0x44) - 0100 0100 • Ctrl + D - 0000 0100 • 0000 0100 (0x04) End Of Transmission • Shift -0x20
λʔϛφϧ γΣϧͰ͑Δػೳ
γΣϧͰ͑Δػೳ Ωʔ όΠϯσΟϯά • ҰൠతͳγΣϧઃఆ͠ͳͯ͘ ಛఆͷΩʔʹػೳׂ͕ΓͯΒΕ ͍ͯΔ • Tab (ೖྗิͳͲ)
γΣϧͰ͑Δػೳ Ωʔ όΠϯσΟϯά • ҰൠతͳγΣϧઃఆ͠ͳͯ͘ ಛఆͷΩʔ ίϯϏωʔγϣϯͰܾ ·ͬͨಈ࡞͕͋Δ • Ctrl
+ A (ΧʔιϧΛߦ಄Ҡ ಈ) • Ctrl + E (ΧʔιϧΛߦҠಈ) • Ctrl + W (લʹ͋Δ୯ޠΛআ)
γΣϧͰ͑Δػೳ Ωʔ όΠϯσΟϯά • ಛఆͷγΣϧ;͗͠ͳػೳ͕͋ Δ • Ctrl + R
(ೖྗཤྺΛݕࡧ) • ↑ (ೖྗΛͱʹཤྺΛݕࡧ - csh ܥ) • (ࢥ͍͔ͭͳ͔ͬͨ)
γΣϧͰ͑Δػೳ ϦμΠϨΫτ • ೖग़ྗΛͲ͔͜ʹઃఆ͢Δػೳ • ग़ྗઌΛ right operand ʹઃఆ •
echo 'test' > testfile.txt • echo 'test' >> testfile.txt # ه • cat testfile.txt # testtest • ೖྗઌ (ݩ) Λ left operand ʹઃఆ • php < info.php
γΣϧͰ͑Δػೳ ϦμΠϨΫτ • ύΠϓϥΠϯػೳ • ίϚϯυͷ࣮ߦ݁ՌΛଞͷίϚ ϯυ͢ػೳ • Τϥʔ͚ͩ͢…ͳΜͯ͜ͱ •
ύΠϓจࣈ | Λ͏ • ls /bin | grep ls
·ͱΊ
·ͱΊ • ϩάΛಡ͏ • λʔϛφϧ γΣϧͱྑ͘ͳΔͱ ͍͍͜ͱ͕͍ͬͺ͍ • ίϚϯυ GUI
ͱҧ͍࠶ݱ͠ ͍͢ • ;ͭ͏ʹ͏͚ͩͳΒͦΜͳʹ͜ Θ͘ͳ͍ʂ