Vim Tutorial सुरुवातीपासून Advanced पर्यंत (nano सह): Modes, Commands, Search आणि Replace
बऱ्याच servers वर VS Code नसतो, mouse नसतो. vi किंवा vim मात्र नेहमी असतो. Vim एक तास विचित्र वाटतो आणि मग सगळ्यात fast editor होतो. आधी nano ने सोपी सुरुवात, मग vim चे तीन modes ते macros, search-replace आणि splits.
या chapter मध्ये तुम्ही काय शिकाल
- nano ने एका मिनिटात edit आणि save
- Vim modes: Normal, Insert, Visual, Command-line
- Fast फिरणं: words, lines, file, search
- Edit: delete, copy, paste, undo, redo, change
- :s आणि :%s ने search आणि replace
- Advanced: visual block, macros, registers, splits, .vimrc
1. रोजचं उदाहरण: remote असलेला typewriter
हे का लागतं?
दोन buttons असलेला typewriter समजा. एक button 'typing' mode: keys letters छापतात. दुसरा 'remote' mode: keys कागद हलवतात, lines कापतात, pages copy करतात. आपण कोणत्या mode मधे आहोत हे कळलं की कधी गडबड होत नाही.
हे काय आहे?
Typing mode = Insert mode (i दाबा). Remote mode = Normal mode (Esc). :wq type करायचा control panel = Command-line mode. Highlighter ने select = Visual mode (v).
कसं करायचं (step by step)
2. nano: सोपा आणि friendly editor
हे का लागतं?
कधी कधी आत्ता एक line बदलायची असते आणि modes शिकायचे नसतात.
हे काय आहे?
nano खाली shortcuts दाखवतो. ^ म्हणजे Ctrl. थेट type करा. Ctrl+O save (Write Out). Ctrl+X exit. Ctrl+W search. Ctrl+K line cut, Ctrl+U paste. Alt+U undo. Ctrl+_ line number ला.
| Keys | काय करतो |
|---|---|
| Ctrl+O, Enter | Save |
| Ctrl+X | Exit |
| Ctrl+W | Search |
| Ctrl+\ | Search आणि replace |
| Ctrl+K / Ctrl+U | Line cut / paste |
| Alt+U / Alt+E | Undo / redo |
| Ctrl+_ | Line ला जा |
कसं करायचं (step by step)
- File line 20 वर उघडा.
nano +20 /etc/hosts
याचा अर्थ: Cursor line 20 वर सुरू.
- Root ची file edit.
sudo nano /etc/ssh/sshd_config
याचा अर्थ: sudo शिवाय Ctrl+O Permission denied देतो.
- Line numbers दाखवा.
nano -l app.conf
याचा अर्थ: -l डावीकडे numbers.
3. Vim modes आणि survival kit
हे का लागतं?
Modes माहीत नसल्याने लोक 'vim मधे अडकतात'. या पाच गोष्टी शिका, कधी अडकणार नाही.
हे काय आहे?
Vim Normal mode मधे उघडतो, जिथे keys म्हणजे commands. i ने Insert mode, type करायला. Esc ने परत Normal. : ने Command-line mode: :w (save), :q (quit), :wq किंवा :x (save आणि quit), :q! (save न करता quit). vimtutor म्हणजे 30 मिनिटांचा built-in lesson.
| Command | काय करतो |
|---|---|
| :w | Save |
| :q | Quit (बदल नसतील तर) |
| :wq or :x or ZZ | Save आणि quit |
| :q! | बदल टाकून quit |
| :w newname | Save as |
| :e file | दुसरी file उघडा |
कसं करायचं (step by step)
- File उघडा.
vim notes.txt
Output:
~
~
"notes.txt" [New]
याचा अर्थ: Normal mode. ~ म्हणजे रिकाम्या lines.
- Text type करा.
i Hello Pune Esc
Output:
Hello Pune
याचा अर्थ: i ने Insert mode; Esc ने बाहेर.
- Save आणि quit.
:wq
Output:
"notes.txt" [New] 1L, 11B written
याचा अर्थ: 1 line, 11 bytes save.
- चूक झाली तर save न करता quit.
:q!
याचा अर्थ: शेवटच्या save नंतरचे बदल गेले.
- Tutor ने अजून शिका.
vimtutor
Output:
= W e l c o m e t o t h e V I M T u t o r
याचा अर्थ: Practice copy उघडते.
4. Normal mode मधे fast फिरणं
हे का लागतं?
Arrow keys slow आहेत. Vim motions ने words, lines, patterns ने उडी मारता येते, आणि त्या प्रत्येक edit command सोबत जुळतात.
हे काय आहे?
h j k l = डावीकडे खाली वर उजवीकडे. w = पुढचा word, b = मागचा word, e = word चा शेवट. 0 = line ची सुरुवात, ^ = पहिला non-space, $ = line चा शेवट. gg = पहिली line, G = शेवटची line, 42G किंवा :42 = line 42. Ctrl+d / Ctrl+u = अर्धं page खाली/वर. % = जुळणारा bracket. Motion आधी number = repeat: 5j = 5 lines खाली.
कसं करायचं (step by step)
- File च्या शेवटी.
G
Output:
(cursor on the last line)
याचा अर्थ: नव्या log lines वाचायला उत्तम.
- Line 120 ला (error message मधून).
:120
Output:
(cursor on line 120)
याचा अर्थ: किंवा थेट: vim +120 app.py.
- 3 words उजवीकडे.
3w
याचा अर्थ: Count + motion.
- Line numbers.
:set number
Output:
1 server {
2 listen 80;
याचा अर्थ: :set nonumber ने बंद.
5. Editing: delete, copy, paste, undo, change
हे का लागतं?
बहुतेक editing म्हणजे छोटे भाग delete, copy, change करणं. Vim हे दोन-तीन keys मधे करतो.
हे काय आहे?
Operator + motion. d = delete, y = yank (copy), c = change (delete करून Insert). dd = line delete, yy = line copy, p = नंतर paste, P = आधी paste. dw = word delete, d$ किंवा D = line शेवटपर्यंत delete, ciw = आतला word change. x = एक character delete. u = undo, Ctrl+r = redo, . = शेवटचा बदल repeat. o / O = खाली/वर नवी line. A = line च्या शेवटी append.
| Keys | काय करतो |
|---|---|
| dd / 3dd | 1 / 3 lines delete |
| yy / p | Line copy / paste |
| dw / cw | Word delete / change |
| ciw | Cursor खालचा पूर्ण word change |
| ci" | Quotes मधला text change |
| x | Character delete |
| u / Ctrl+r | Undo / redo |
| . | शेवटचा बदल repeat |
| >> / << | Line indent / unindent |
कसं करायचं (step by step)
- 3 lines delete.
3dd
Output:
3 fewer lines
याचा अर्थ: Register मधे जातात, p ने paste करता येतं.
- Line खाली हलवा (cut आणि paste).
ddp
याचा अर्थ: Line delete, पुढच्या नंतर paste.
- Word बदला.
ciw production Esc
Output:
env = production
याचा अर्थ: Cursor खालचा word बदलला.
- Quotes मधली value बदला.
ci" 10.0.1.20 Esc
Output:
host = "10.0.1.20"
याचा अर्थ: Line वर quotes मधे कुठेही चालतं.
- पुढच्या match वर तोच बदल.
n.
याचा अर्थ: n पुढच्या search hit ला, . repeat.
- दोनदा undo, एकदा redo.
u u Ctrl+r
Output:
1 change; before #4
याचा अर्थ: Session मधे undo अमर्याद.
6. Search आणि replace
हे का लागतं?
40 ठिकाणी host name हाताने बदलणं slow आणि चुका होणारं.
हे काय आहे?
/text पुढे search, ?text मागे, n = पुढचा, N = मागचा, * = cursor खालचा word search. :s/old/new/ line वरचा पहिला match replace. :%s/old/new/g पूर्ण file मधे सगळे. प्रत्येकाला विचारायला c: :%s/old/new/gc. :10,20s/// lines 10–20 पुरतं. :noh highlight काढतो.
कसं करायचं (step by step)
- Log मधे errors शोधा.
/ERROR
Output:
search hit BOTTOM, continuing at TOP
याचा अर्थ: पुढच्यासाठी n.
- File मधे सगळे replace.
:%s/db-old.internal/db-new.internal/g
Output:
12 substitutions on 12 lines
याचा अर्थ: % = पूर्ण file, g = प्रत्येक line वरचे सगळे matches.
- Confirm सह replace.
:%s/8080/9090/gc
Output:
replace with 9090 (y/n/a/q/l/^E/^Y)?
याचा अर्थ: y = हो, n = skip, a = सगळे, q = थांबा.
- फक्त lines 5 ते 15.
:5,15s/^/# /
Output:
11 substitutions on 11 lines
याचा अर्थ: Lines 5–15 comment (^ = line सुरुवात).
- सगळ्या blank lines delete.
:g/^$/d
Output:
8 fewer lines
याचा अर्थ: :g प्रत्येक जुळणाऱ्या line वर command चालवतो.
7. Advanced: visual mode, macros, registers, splits
हे का लागतं?
मोठ्या edits साठी (YAML blocks, CSV columns, 200 lines वर तोच बदल) power tools लागतात.
हे काय आहे?
v = characters select, V = lines select, Ctrl+v = block (columns) select. Select नंतर d, y, >, < किंवा : त्यावर चालतात. Macros: qa register a मधे recording सुरू, q थांबवतो, @a play, 10@a 10 वेळा. Registers: "ayy a मधे copy, "ap a मधून paste, "+y system clipboard. Splits: :split आणि :vsplit, Ctrl+w w ने फिरा. :!cmd shell command. :r !cmd त्याचा output आत घालतो.
कसं करायचं (step by step)
- YAML block indent.
V 4j >
Output:
5 lines >ed 1 time
याचा अर्थ: 5 lines select करून उजवीकडे.
- 10 lines च्या सुरुवातीला # (block insert).
Ctrl+v 9j I # Esc
Output:
# line1
# line2 ...
याचा अर्थ: Block mode मधे I प्रत्येक selected line वर type करतो.
- Word ला quotes लावून खाली जाणारा macro.
qa I" Esc A", Esc j q
Output:
"apple",
याचा अर्थ: Register a मधे record.
- आणखी 50 lines वर play.
50@a
Output:
"banana",
"cherry", ...
याचा अर्थ: तोच edit, 50 वेळा, एका second मधे.
- दोन files शेजारी.
:vsplit nginx.conf
याचा अर्थ: Ctrl+w w windows मधे फिरतो.
- Shell मधून आजची date.
:r !date
Output:
Sun Oct 25 11:02:10 IST 2026
याचा अर्थ: File मधे shell output.
- sudo शिवाय उघडलेली root file save.
:w !sudo tee % > /dev/null
याचा अर्थ: % म्हणजे current file name. नंतर :e! ने reload.
8. तुमचा .vimrc: vim आपलं बनवा
हे का लागतं?
प्रत्येक वेळी :set number type करणं कंटाळवाणं. ~/.vimrc मधल्या settings दर वेळी load होतात.
हे काय आहे?
~/.vimrc म्हणजे settings ची text file. चांगली सुरुवात: number, relativenumber, YAML साठी tabs म्हणून spaces, search options, syntax on.
कसं करायचं (step by step)
- Starter .vimrc लिहा.
cat > ~/.vimrc <<'V'
syntax on
set number relativenumber
set expandtab tabstop=2 shiftwidth=2
set ignorecase smartcase incsearch hlsearch
set paste?
V
याचा अर्थ: आता प्रत्येक vim session मधे या settings.
- Setting तपासा.
:set tabstop?
Output:
tabstop=2
याचा अर्थ: ? current value दाखवतो.
- Vim default editor (git, crontab, visudo).
echo 'export EDITOR=vim VISUAL=vim' >> ~/.bashrc && source ~/.bashrc
याचा अर्थ: crontab -e आणि git commit आता vim उघडतात.
9. अनेक industries मधली खरी उदाहरणं
हे का लागतं?
तेच Linux skill प्रत्येक प्रकारच्या company मध्ये लागतं. वेगवेगळ्या ठिकाणी पाहिलं की लक्षात राहतं.
हे काय आहे?
प्रत्येक row म्हणजे एक काल्पनिक team. कोण हे वापरतं आणि कसं ते दाखवते.
कसं करायचं (step by step)
| Team आणि शहर | ते कसं वापरतात | Command |
|---|---|---|
| Vikram, SRE, Noida | Live server वर vim ने nginx config fix | sudo vim /etc/nginx/nginx.conf |
| Chloe, Kubernetes, Sydney | expandtab आणि visual indent ने YAML edit | kubectl edit deploy web |
| Javier, data, Bogotá | Macro ने CSV column चं SQL | qa ... q 200@a |
| Sneha, support, Kochi | Hosts file साठी nano | sudo nano /etc/hosts |
| Yusuf, security, Istanbul | sudoers सुरक्षितपणे edit | sudo visudo |
| Aarav, student, Delhi | git commit messages vim मधे | git commit |
| Nora, embedded, Munich | vim नसलेल्या BusyBox devices वर vi | vi /etc/config/network |
10. नेहमीच्या errors आणि त्यांचे fixes
हे का लागतं?
हे errors सगळ्यांना येतात. कारण माहीत असलं की तास वाचतात.
हे काय आहे?
आधी नेमका message वाचा. मग खालच्या row शी जुळवा.
कसं करायचं (step by step)
| दिसणारा error | का होतं | Fix कसा करायचा |
|---|---|---|
E37: No write since last change (add ! to override) | Save न करता :q | :wq ने save, किंवा :q! ने टाका.:wq |
E45: 'readonly' option is set (add ! to override) | File read-only उघडली | तुमची असेल तर :w!, नाही तर नीट उघडा.:w! |
E212: Can't open file for writing | Permission नाही किंवा folder नाही | sudo tee ने save, किंवा sudo ने उघडा.:w !sudo tee % > /dev/null |
E325: ATTENTION Found a swap file by the name ".app.conf.swp" | आधी vim crash किंवा file दुसरीकडे उघडी | Recover ला R, जुनी असेल तर D ने swap delete.ls -la .*.swp |
Typed text appears as commands (letters vanish, lines deleted) | तुम्ही Insert नाही, Normal mode मधे होतात | Esc, मग u ने undo, मग i ने insert.u |
E486: Pattern not found: Error | Search case sensitive | /\cerror किंवा :set ignorecase.:set ignorecase |
Pasted code gets extra indent (staircase) | Paste वर auto-indent | Paste आधी :set paste, नंतर :set nopaste.:set paste |
Stuck in 'Recording @q' | q नंतर letter दाबलं | थांबवायला पुन्हा q.q |
Error 'mapping' or tab errors in YAML after editing | Spaces ऐवजी tabs आले | expandtab set करून :retab.:set expandtab | retab |
nano: Error writing /etc/hosts: Permission denied | sudo शिवाय nano | Exit करून sudo nano ने उघडा.sudo nano /etc/hosts |
11. Troubleshooting step by step
हे का लागतं?
Vim विचित्र वागला तर जवळजवळ नेहमी mode, file permission किंवा setting.
हे काय आहे?
वरून खाली जा. ज्या step ला problem दिसतो तिथे थांबा.
कसं करायचं (step by step)
- दोनदा Esc. आता Normal mode.
- जे झालं ते undo.
u
- खालची mode line बघा (INSERT, VISUAL, recording).
- File लिहिता येते का.
:!ls -l %
- Typing बदलणाऱ्या settings.
:set paste? expandtab? autoindent?
- vimrc शिवाय clean start.
vim -u NONE file
12. Lab 1: फक्त vim ने बिघडलेला config fix
हे का लागतं?
Grace Cape Town मधल्या bakery chain साठी on call. App config जुन्या database कडे आणि port चुकीचा. Vim ने fix करा.
हे काय आहे?
पूर्ण hands-on lab. प्रत्येक step test Linux machine वर करा (EC2 instance, VM किंवा WSL).
कसं करायचं (step by step)
- File बनवा.
printf 'db_host = "db-old.internal"\ndb_port = 5433\nreplica = "db-old.internal"\ndebug = true\n' > app.conf
- Numbers सह उघडा.
vim +'set number' app.conf
Output:
1 db_host = "db-old.internal"
2 db_port = 5433
3 replica = "db-old.internal"
4 debug = true
- सगळीकडे host replace.
:%s/db-old/db-new/g
Output:
2 substitutions on 2 lines
- Line 2 वर जाऊन port बदला.
:2 then $ ciw 5432 Esc
Output:
db_port = 5432
- debug line delete.
G dd
Output:
3 lines
- Save, quit, check.
:wq then cat app.conf
Output:
db_host = "db-new.internal"
db_port = 5432
replica = "db-new.internal"
13. Lab 2: Macro ने list चं JSON
हे का लागतं?
100 शहरांची नावं एका मिनिटात JSON array मधे.
हे काय आहे?
पूर्ण hands-on lab. प्रत्येक step test Linux machine वर करा (EC2 instance, VM किंवा WSL).
कसं करायचं (step by step)
- List बनवा.
printf '%s\n' Pune Mumbai Delhi Paris Lagos Lima > cities.txt && vim cities.txt
- Record: line ला quotes, comma, खाली.
qq I" Esc A", Esc j q
Output:
"Pune",
- बाकीवर play.
100@q
Output:
"Mumbai",
...
"Lima",
- शेवटचा comma काढा.
G $ x
- Brackets जोडा.
gg O [ Esc G o ] Esc :wq
Output:
[
"Pune",
...
"Lima"
]
- Validate.
python3 -m json.tool cities.txt | head -3
Output:
[
"Pune",
"Mumbai",
Ravindra Bagale's Tip
Lost in vim? Press Esc twice, then type :q! and Enter. You are out with no damage. Then spend 30 minutes with vimtutor, it is the best free vim course.
Ravindra Bagale's Tip – मराठी
Vim मधे हरवलात? दोनदा Esc, मग :q! आणि Enter. काहीही नुकसान न होता बाहेर. मग vimtutor ला 30 मिनिटं द्या, तो सगळ्यात चांगला free vim course आहे.
Ravindra Bagale's Tip – हिंदी
Vim में खो गए? दो बार Esc, फिर :q! और Enter। बिना नुकसान बाहर। फिर vimtutor को 30 मिनट दीजिए, यह सबसे अच्छा free vim course है।
14. नेहमी विचारले जाणारे प्रश्न
प्र. vi vs vim?
vi प्रत्येक Unix मधला जुना editor. vim म्हणजे 'vi improved': undo levels, syntax colours, plugins. बऱ्याच systems वर vi म्हणजे vim.
प्र. nano शिकू की vim?
दोन्ही. Quick edit ला nano, vim कारण सगळीकडे असतो आणि खऱ्या कामात खूप fast.
प्र. Laptop clipboard ला copy कसं?
GUI किंवा clipboard support असेल तर "+y. SSH वर terminal मधे mouse ने select.
प्र. Neovim म्हणजे?
vim चा modern fork, Lua config आणि built-in LSP. Keys त्याच.
प्र. sudoers सुरक्षित कसं edit?
नेहमी visudo ने. Save आधी syntax तपासतो, म्हणून lock-out होत नाही.
15. मुलाखत प्रश्न आणि उत्तरं
Beginner level
प्र. Vim save आणि quit कसं?
:wq किंवा :x किंवा ZZ.
प्र. Save न करता quit कसं?
:q!
प्र. Insert mode कसा?
i (किंवा a, o, A, I).
प्र. nano मधे save?
Ctrl+O मग Enter.
Mid level level
प्र. File मधे सगळे replace कसे?
:%s/old/new/g, confirm साठी c.
प्र. . काय करतो?
शेवटचा बदल repeat.
प्र. v, V आणि Ctrl+v फरक?
Character, line आणि block selection.
प्र. Line 50 ला कसं?
:50 किंवा 50G.
Senior level
प्र. sudo शिवाय nginx.conf मधे 30 edits. Save कसं?
:w !sudo tee % > /dev/null, मग :e!. किंवा /tmp मधे save करून sudo cp.
प्र. Macro समजावा आणि कधी वापराल.
Register मधे record केलेला keys चा क्रम (qa ... q, @a). Lines reformat सारख्या repetitive edits ला.
प्र. Swap file आणि E325 कसं handle?
Vim ची crash-recovery file. Crash असेल तर R, जुनी असेल तर delete, दुसरं कोणी edit करत असेल तर read-only.
प्र. Vim मधे YAML safe कसं?
set expandtab tabstop=2 shiftwidth=2, tabs बघायला :set list, convert ला :retab.
घरी करून बघा
- vimtutor 30 मिनिटं.
- Starter settings सह ~/.vimrc.
- Test file मधे :%s ने word बदला.
सराव Tasks
Ahmednagar Sugar Co-op हा अहिल्यानगर मधला साखर सहकारी व्यवसाय आहे. Balasaheb Pawar त्यांचं IT व cloud काम पाहतात. त्यांचे पैसे INR मध्ये मोजले जातात आणि AWS resources ap-south-1 Region मध्ये चालतात. खालच्या tasks मध्ये तुम्ही या lesson मध्ये शिकलेलं वापरून त्यांची खरी कामं करता. सगळी नावं, account IDs, IP addresses व numbers सरावासाठी काल्पनिक आहेत.
0 / 16
सोपं File एका line वर उघडा
का: Error line वर उडी.
काय करायचं: app.py vim मधे line 120 वर cursor ठेवून उघडा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
सोपं Line numbers सह nano
का: Context सह quick edit.
काय करायचं: site.ini nano मधे line numbers सह उघडा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
सोपं nano ने root file
का: System files ना root.
काय करायचं: /etc/motd nano मधे उघडा म्हणजे save करता येईल.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
सोपं vim tutor सुरू
का: सगळ्यात चांगला free 30 मिनिटांचा lesson.
काय करायचं: Built-in vim tutorial French मधे सुरू करा (language code fr).
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
सोपं Save आणि quit
का: सगळ्यात वापरला जाणारा vim command.
काय करायचं: vim Normal mode मधे save करून quit करणारा command-line command लिहा.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Insert mode
का: Normal mode मधे text type होत नाही.
काय करायचं: Cursor आधी Insert mode मधे जाणारी एक key कोणती?
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Line delete
का: झटपट line काढणं.
काय करायचं: Current पूर्ण line delete करणाऱ्या Normal-mode keys कोणत्या?
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Line copy
का: Copy ला yank म्हणतात.
काय करायचं: Current line copy (yank) करणाऱ्या keys कोणत्या?
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Undo
का: प्रत्येक चूक परत घेता येते.
काय करायचं: शेवटचा बदल undo करणारी एक key कोणती?
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Line numbers
का: Error messages च्या line numbers जुळवा.
काय करायचं: Line numbers दाखवणारा vim command लिहा.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Line 50 ला
का: Error message वरून उडी.
काय करायचं: Line 50 ला जाणारा vim command-line command लिहा.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं nano मधे save
का: nano files write out करतो.
काय करायचं: nano मधे file save करणारं key combination कोणतं? ctrl+x सारखं लिहा.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
मध्यम sudoers सुरक्षित
का: एका typo ने सगळे admins lock होतात.
काय करायचं: Syntax तपासणाऱ्या safe editor ने /etc/sudoers.d/40-ops drop-in file उघडा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
मध्यम पूर्ण file मधे replace
का: 40 ठिकाणी host बदला.
काय करायचं: पूर्ण file मधे प्रत्येक db-old ला db-new करणारा vim command लिहा.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
मध्यम Macro play
का: Record केलेला edit repeat.
काय करायचं: Register a मधे macro record केला. तो एकदा play करणाऱ्या keys लिहा.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
अवघड Blank lines delete
का: Config files साफ.
काय करायचं: File मधल्या सगळ्या रिकाम्या lines delete करणारा vim command.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
16. संबंधित chapters
- DevOps साठी Linux Ops Refresh
- Automation साठी Bash Scripting
- Linux grep आणि find Commands Examples सह
- Linux Servers मध्ये Passwordless SSH
थोडक्यात सांगायचं तर
- nano: Ctrl+O save, Ctrl+X exit.
- vim: Esc Normal, i Insert, :wq save आणि quit, :q! बाहेर.
- Operator + motion: dd, yy, p, ciw, u, .
- :%s/old/new/g, visual block, macros @a.
उजळणी, तुलना आणि मुलाखत cards
हा lesson काही मिनिटांत revise करा. Cards phone वर save करा किंवा PNG download करा. प्रत्येक card वरचा QR हा lesson उघडतो.








अजून cards: Ravi Sir's Cards.