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
LinuxCommand入門2
Search
mina
July 01, 2021
Technology
0
240
LinuxCommand入門2
大学サークルのイントロ用資料です
https://speakerdeck.com/silmin_/linuxcommandru-men
の続きです
mina
July 01, 2021
Tweet
Share
More Decks by mina
See All by mina
おうちGitLabのススメ
silmin_
3
1.1k
Git入門
silmin_
28
15k
暗号について
silmin_
0
130
LinuxCommand入門
silmin_
0
340
Webについて
silmin_
3
160
ネットワークとは
silmin_
0
200
コンピュータとは|初心者向け資料
silmin_
1
150
ビットについて|入門者向け資料
silmin_
0
180
GitLab-CIとGoogleCloudRunで作るSandBox環境
silmin_
2
230
Other Decks in Technology
See All in Technology
プロダクトエンジニアリングで開発の楽しさを拡張する話
barometrica
0
210
Rethinking Incident Response: Context-Aware AI in Practice - Incident Buddy Edition -
rrreeeyyy
0
120
AIは変更差分からユニットテスト_結合テスト_システムテストでテストすべきことが出せるのか?
mineo_matsuya
5
2.6k
夏休みWebアプリパフォーマンス相談室/web-app-performance-on-radio
hachi_eiji
1
270
キャリアを支え組織力を高める「多層型ふりかえり」 / 20250821 Kazuki Mori
shift_evolve
PRO
2
140
コミュニティと計画的偶発性理論 - 出会いが人生を変える / Life-Changing Encounters
soudai
PRO
7
840
React Server ComponentsでAPI不要の開発体験
polidog
PRO
0
350
AWSの最新サービスでAIエージェント構築に楽しく入門しよう
minorun365
PRO
8
490
僕たちが「開発しやすさ」を求め 模索し続けたアーキテクチャ #アーキテクチャ勉強会_findy
bengo4com
0
2.6k
AI時代の大規模データ活用とセキュリティ戦略
ken5scal
1
260
ウォンテッドリーのアラート設計と Datadog 移行での知見
donkomura
0
160
意志の力が9割。アニメから学ぶAI時代のこれから。
endohizumi
1
110
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Facilitating Awesome Meetings
lara
55
6.5k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Art, The Web, and Tiny UX
lynnandtonic
301
21k
Faster Mobile Websites
deanohume
309
31k
Building an army of robots
kneath
306
45k
Transcript
Linux Command 入門 2 Secprj Intro-phase
標準入力 / 標準出力 standard input / standard output
標準入力 / 標準出力 standard input / standard output
入力と出力 input / output コマンドには入力と出力となるファイルが存在する $ cp の場合は... $ cp
file1 file2 コマンド本体 引数
入力と出力 input / output コマンドには入力と出力となるファイルが存在する $ cp の場合は... $ cp
file1 file2 コマンド本体 引数 input output
入力と出力 input / output コマンドには入力と出力となるファイルが存在する $ cp の場合は... cp file2
file1 input output - inputされた ファイルを複製 - 指定された名前 でoutput
None
Terminalへの出力がある
Terminalへの出力がない
標準入力 / 標準出力 standard input / standard output
$ ls は出力先を指定してない
どうやって出力先を決めるか $ cp のように指定したわけではない Terminalがたくさんあったら? 指定してないけど,出力先が決まっている ls file1 dir/ input
Terminal output 勝手に 決まってる?
どうやって出力先を決めるか 何も指定しない場合に暗黙的に使用される 出力先のことを標準出力という (厳密にはlsが標準出力を指定している) ls file1 dir/ input Terminal standard
output 暗黙的に使用 される出力先
標準入力 / 標準出力 standard input / standard output
標準入力は標準出力の入力版 何も指定しないとき,コマンドが入力を求めた場合,標準入力から入力する 標準入力 bcコマンドは入力された文字列に対し,簡単な四則演算をして出力する
標準入力は標準出力の入力版 何も指定しないとき,コマンドが入力を求めた場合,標準入力から入力する 標準入力 bc Terminal standard output Terminal standard input
パイプとリダイレクト どちらも標準入出力を引き回す方法 パイプ |:コマンドの標準出力を他のコマンドの標準入力にする リダイレクト <, >, ...:コマンドの標準入出力を他のファイル宛にする $ ls
-l /bin | less $ bc < file1 > file2
パイプ(Pipe) コマンドの標準出力を他のコマンドの標準入力にする $ ls -l /usr/bin $ ls -l /usr/bin
| less lsの引数は何でもいい 今回はlessを使う関係上 長めなやつを選んだ
パイプ(Pipe) コマンドの標準出力を他のコマンドの標準入力にする $ ls -l /usr/bin $ ls -l /usr/bin
| less ls Terminal standard output ls Terminal output less standard output
パイプ(Pipe) コマンドの標準出力を他のコマンドの標準入力にする $ ls -l /usr/bin | less ls Terminal
output less standard output 標準出力した と思っている 標準入力された と思っている
リダイレクト(Redirect) コマンドの標準入出力を他のファイル宛にする $ bc > file2 $ bc < file1
$ bc $ bc < file1 > file2 bc Terminal standard output file1 input bc file2 output Terminal standard input bc Terminal standard output Terminal standard input bc file2 output file1 input
パイプとgrepコマンド grepコマンドは検索文字列と検索対象を受け取り,結果を出力する $ grep str file1
パイプとgrepコマンド 検索対象は標準入力から受け取ることもできる $ ls -l /usr/bin | grep apt
パイプとリダイレクトを組み合わせた例 $ tail はファイルの最後 数行のみを出力するコマンド $ cat hoge.out | grep
hoge.9 > hoge9
正規表現(regular expression) 文字列が特定のパターンにマッチするかどうかを判定してくれる このほかにもたくさんある 文字 説明 . 任意の1文字にマッチ + 直前の文字が1回以上繰り返す
* 直前の文字が0回以上繰り返す \n 改行文字 \t タブ文字 基本的な正規表現一覧 | murashun.jp https://murashun.jp/article/programming/regular-expression.html
正規表現(regular expression) CLI操作をする上で便利な場面がいくつかある $ ls -l *.py