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
Bash Introduction
Search
André Augusto Costa Santos
October 24, 2013
Programming
614
210k
Bash Introduction
Introduction to the Unix command line
André Augusto Costa Santos
October 24, 2013
Tweet
Share
Other Decks in Programming
See All in Programming
What Spring Developers Should Know About Jakarta EE
ivargrimstad
1
640
少数精鋭エンジニアがフルスタック力を磨く理由 -そしてAI時代へ-
rebase_engineering
0
130
Parallel::Pipesの紹介
skaji
2
880
クラシルリワードにおける iOSアプリ開発の取り組み
funzin
1
820
型安全なDrag and Dropの設計を考える
yudppp
5
670
型付け力を強化するための Hoogle のすゝめ / Boosting Your Type Mastery with Hoogle
guvalif
1
240
ts-morph実践:型を利用するcodemodのテクニック
ypresto
1
550
〜可視化からアクセス制御まで〜 BigQuery×Looker Studioで コスト管理とデータソース認証制御する方法
cuebic9bic
2
270
Perlで痩せる
yuukis
1
670
Cloudflare Realtime と Workers でつくるサーバーレス WebRTC
nekoya3
0
250
事業戦略を理解してソフトウェアを設計する
masuda220
PRO
14
4k
💎 My RubyKaigi Effect in 2025: Top Ruby Companies 🌐
yasulab
PRO
1
130
Featured
See All Featured
Unsuck your backbone
ammeep
671
58k
GitHub's CSS Performance
jonrohan
1031
460k
KATA
mclloyd
29
14k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Agile that works and the tools we love
rasmusluckow
329
21k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
630
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Art, The Web, and Tiny UX
lynnandtonic
298
21k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
25
2.8k
Being A Developer After 40
akosma
91
590k
Building a Modern Day E-commerce SEO Strategy
aleyda
40
7.3k
Transcript
INTRODUCTION BASH
ANDRÉ SANTOS FRANCISCO NEVES 62Gerente
[email protected]
andre-santos.pt francisconeves
[email protected]
francisconeves.com
None
UNIX BASED SYSTEMS
UNIX BASED SYSTEMS STABILITY PERFORMANCE SCALABILITY COMPATIBILITY PRICE VS WINDOWS
BASH? ‣WHAT DOES IT MEAN? ‣ADVANTAGES? WHAT IS
BASH? ‣AUTOCOMPLETE ‣MAN PAGES ‣CLEAR SCREEN HOW TO DEAL WITH
COMMANDS SOME REQUIRED
LIST ls -a -l ALL FILES LONG FORMAT MAKE DIRECTORY
mkdir [OPT] DIR -p MAKE PARENTS
CHANGE DIRECTORY cd PATH . CURRENT DIR ~ .. PARENT
DIR HOME DIR PRINT WORKING DIRECTORY pwd CREATE EMPTY FILE touch FILE
COPY cp [OPT] FROM TO MOVE OR RENAME mv FROM
TO -r COPY DIRECTORIES RECURSIVELY
REMOVE rm [OPT] FILE REMOVE DIRECTORY rmdir [OPT] DIR -r
RECURSIVELY REMOVE DIRECTORIES -f FORCE -p PARENTS
CONCATENATE AND PRINT FILES cat [OPT] FILES less [OPT] FILE
-N NUMBER THE OUTPUT LINES VIEW FILE -l NUMBER THE OUTPUT LINES
FREQUENT COMMANDS LESS Key COMMAND Space NEXT PAGE b PREVIOUS
PAGE j NEXT LINE k PREVIOUS LINE g FIRST LINE G LAST LINE <n>G LINE <n> Key COMMAND /<text> FOWARD SEARCH FOR <TEXT> ?<text> BACKWARD SEARCH FOR <TEXT> n NEXT SEARCH MATCH N PREVIOUS SEARCH MATCH = FILE INFORMATION h HELP q QUIT
DISPLAY FIRST LINES head [OPT] FILE tail [OPT] FILE -n
LAST N LINES -n FIRST N LINES DISPLAY LAST LINES
PRINT LINES MATCHING A PATTERN grep [OPT] PATTERN [FILE...] -c
DISPLAY THE NUMBER OF MATCHED LINES -i IGNORE CASE SENSITIVITY -l DISPLAY THE FILENAMES -n DISPLAY THE LINE NUMBERS -w MATCH WHOLE WORD
WORD COUNT wc [OPT] FILE -l LINE COUNT -c BYTE
COUNT -m CHARACTER COUNT -w WORD COUNT
COMMANDS CTRL-KEY
KILL PROCESS CTRL + C STOP PROCESS CTRL + Z
END OF FILE CTRL + D
REDIRECTION I/O
COMMAND > FILE REDIRECT STDOUT TO A FILE OVERWRITE COMMAND
>> FILE REDIRECT STDIN TO A FILE APPEND COMMAND < FILE
COMMAND1 | COMMAND2 | COMMAND3 REDIRECT THE OUTPUT FROM ONE
COMMAND AS INPUT TO THE NEXT ONE
WILDCARDS
WHAT ARE WILDCARDS?
* ? ANY SINGLE CHARACTER ANY NUMBER OF CHARACTERS
SECURITY SYSTEM AND
PERMISSIONS UNIX sudo [OPT] [USER] COMMAND ALLOWS USERS TO RUN
PROGRAMS WITH THE SECURITY PRIVILEGES OF ANOTHER USER NORMALLY THE ROOT
PERMISSIONS UNIX u u u g g g o o
o user user user group group group others others others r w x r w x r w x 4 2 1 4 2 1 4 2 1 a = all 7
CHANGE PERMISSIONS chmod [OPT] MODE FILE -R RECURSIVELY +rx g-w
777 READ AND EXECUTE FOR ALL DENY WRITE ACESS FOR GROUP READ, WRITE AND EXECUTE FOR ALL
PROCESSES UNIX COMMAND & RUN PROCESS ON BACKGROUND jobs BACKGROUND
OR SUSPENDED PROCESSES kill SIGNAL PROCESS SEND SIGNAL TO A PROCESS killall PROCESS KILL PROCESS BY NAME
top DISPLAY TOP CPU PROCESSES ps REPORTS THE PROCESS STATUS
-e FULL LISTING ALL PROCESSES -f
LEAST LAST BUT NOT
history -c CLEAR LAST COMMANDS USED time COMMAND TIME COMMAND
EXECUTION diff COMPARE FILES LINE BY LINE !* LAST MATCHED COMMAND
WALK A FILE HIERARCHY find PATH [OPT] [EXPRESSION] -name FIND
BY NAME -size FIND BY SIZE -iname CASE INSENSITIVE MODE
?