Skip to content

Terminal Commands Cheat Sheet: Terminal और Shell Complete Guide

Updated 26 Sep 2026 5 min scan

Terminal / Shell क्या है?#

अगर आपने कभी developer को cd, ls, mkdir, git, npm या python जैसे commands type करते देखा है, तो आपने Terminal और Shell का नाम जरूर सुना होगा।

Simple words में:

Terminal वह जगह/interface है जहाँ हम computer के साथ text commands के through interact करते हैं।

Shell वह program है जो हमारी commands को समझता है और operating system से उनका काम करवाता है।

इसे ऐसे समझिए:

Terminal = जहाँ आप command लिखते हैं
Shell = जो आपकी command को समझकर execute करवाता है

उदाहरण:

Code
cd projects

यहाँ आप Terminal में command लिखते हैं और Shell उस command को execute करता है।


Terminal और Shell में क्या Difference है?#

अक्सर beginners Terminal और Shell को same समझ लेते हैं, लेकिन दोनों अलग concepts हैं।

TermSimple MeaningExample
TerminalCommand लिखने/देखने का interfaceTerminal app
ShellCommands को interpret और execute करने वाला programBash, Zsh
CommandComputer को दिया गया instructionls
ProcessCurrently running program/tasknode app.js
DirectoryFolderprojects/
FileStored dataapp.js

एक simple flow:

Code
You
 ↓
Terminal
 ↓
Shell
 ↓
Operating System
 ↓
File / Process / Network / Other Task

Terminal क्या करता है?#

Terminal एक interface provide करता है जहाँ आप computer से text-based तरीके से interact कर सकते हैं।

GUI में आप:

  • Folder पर double-click करते हैं
  • File को rename करते हैं
  • Copy/Paste करते हैं
  • Application open करते हैं

Terminal में वही काम commands से किया जा सकता है।

Example:

Code
mkdir projects

यह command एक नया projects directory बनाने के लिए use होती है।


Shell क्या करता है?#

Shell आपकी typed command को interpret करता है और operating system से required action करवाता है।

Popular shells:

ShellCommon Platform
BashLinux, macOS, WSL
ZshmacOS और Unix-like systems
FishLinux/macOS
PowerShellWindows, Linux, macOS
Command PromptWindows

हर shell की syntax और features थोड़ी अलग हो सकती हैं।

इसलिए किसी command को दूसरे shell में use करते समय compatibility check करना useful है।


Terminal vs Shell — आसान Example#

मान लीजिए आप एक restaurant में हैं।

  • Terminal = आपकी table
  • Shell = waiter
  • Command = आपका order
  • Operating System = kitchen
  • Output = आपका तैयार order

आप Terminal में command लिखते हैं।

Shell उस command को समझता है और operating system को required task करने के लिए instruct करता है।

यह सिर्फ analogy है। Technically Shell एक command interpreter/program है।


Command क्या होती है?#

Command एक instruction होती है जो आप Shell को देते हैं।

Example:

Code
pwd

यह current working directory दिखाती है।

एक और example:

Code
ls

यह current directory की files और directories दिखाती है।

Command को generally ऐसे समझ सकते हैं:

Code
command + options + arguments

Example:

Code
ls -la projects

यहाँ:

  • ls = command
  • -la = options
  • projects = argument

हर command में options और arguments होना जरूरी नहीं है।

Example:

Code
pwd

यह अकेली command भी काम कर सकती है।


Current Working Directory क्या है?#

Terminal में आपका एक current working directory होता है।

इसे ऐसे समझिए जैसे आप किसी folder के अंदर खड़े हैं।

Example:

Code
/Users/user/projects

अगर आप इस directory में हैं और ls run करते हैं, तो इसी location की files/folders दिखाई जाएँगी।

Current location देखने के लिए:

Code
pwd

Example output:

Code
/Users/user/projects

pwd का मतलब है print working directory।


pwd — Current Location देखें#

Code
pwd

यह आपकी current working directory का path दिखाता है।

Example:

Code
/Users/user/projects

Linux में ऐसा path हो सकता है:

Code
/home/user/projects

याद रखने वाली बात

pwd = मैं अभी कहाँ हूँ?


ls — Files और Folders देखें#

Code
ls

यह current directory की contents दिखाता है।

Example:

Code
app.js
package.json
src
README.md

Hidden files सहित ज्यादा details देखने के लिए Unix-like shells में:

Code
ls -la

याद रखने वाली बात

ls = यहाँ क्या-क्या है?


cd — Directory Change करें#

एक directory के अंदर जाने के लिए:

Code
cd projects

Parent directory में जाने के लिए:

Code
cd ..

Home directory पर जाने के लिए:

Code
cd ~

किसी absolute path पर जाने के लिए:

Code
cd /Users/user/projects

Example

मान लीजिए current location है:

Code
/Users/user

और उसमें projects folder है।

Code
cd projects

अब location होगी:

Code
/Users/user/projects

cd और ls को confuse न करें

Code
cd = location change करना
ls = location के अंदर देखना

Absolute Path और Relative Path#

Terminal में paths को समझना बहुत important है।

Absolute Path

Absolute path पूरी location बताता है।

Example:

Code
/Users/user/projects/app

या Linux में:

Code
/home/user/projects/app

यह किसी specific root location से शुरू होता है।

Relative Path

Relative path current directory के हिसाब से लिखा जाता है।

अगर आप यहाँ हैं:

Code
/Users/user/projects

तो:

Code
cd app

का मतलब है:

Code
/Users/user/projects/app

Simple Difference

PathMeaning
/Users/user/projects/appAbsolute path
appCurrent directory से relative path
../appParent directory से app
.Current directory
..Parent directory
~Home directory

. और .. क्या होते हैं?#

Terminal में दो special path references बहुत commonly use होते हैं।

.

Current directory को represent करता है।

Code
./app.js

यह current directory में मौजूद app.js को refer कर सकता है।

..

Parent directory को represent करता है।

Code
cd ..

इसका मतलब है एक level ऊपर जाना।

Example:

Code
projects/
└── web/
    └── app/

अगर आप app के अंदर हैं:

Code
cd ..

तो आप web directory में चले जाएँगे।


Directory बनाना — mkdir#

New directory बनाने के लिए:

Code
mkdir projects

एक साथ nested directories बनाने के लिए Unix-like systems में:

Code
mkdir -p projects/frontend/src

यह required parent directories भी create कर सकता है।

Example

Code
mkdir my-app
cd my-app

अब आप my-app directory के अंदर हैं।


File बनाना#

Unix-like shells में empty file बनाने का common तरीका:

Code
touch index.html

Example:

Code
touch app.js

इसके बाद:

Code
ls

आपको app.js दिखाई दे सकती है।

touch का behavior सिर्फ file creation तक limited नहीं है; existing file के timestamps को भी update कर सकता है।


File का Content देखना#

Unix-like systems में छोटी text file का content देखने के लिए:

Code
cat file.txt

Example:

Code
cat package.json

अगर file बहुत बड़ी है, तो less useful हो सकता है:

Code
less file.txt

less में आप content को scroll करके पढ़ सकते हैं।


File Copy करना — cp#

File copy करने के लिए:

Code
cp file.txt backup.txt

यह file.txt की copy backup.txt नाम से बनाएगा।

Directory copy करने के लिए platform और shell/tool behavior के अनुसार appropriate options की जरूरत हो सकती है।

Unix-like systems में commonly:

Code
cp -r project backup-project

यह directory और उसके contents को recursively copy करने के लिए use किया जाता है।


File Move या Rename करना — mv#

File rename करने के लिए:

Code
mv old.txt new.txt

File को दूसरी directory में move करने के लिए:

Code
mv app.js src/

इसलिए mv दो common काम कर सकता है:

Code
Rename
Move

File या Directory Delete करना — rm#

File delete करने के लिए:

Code
rm file.txt

Directory और उसके contents को recursively delete करने के लिए Unix-like systems में:

Code
rm -r old-folder

⚠️ Important

rm से delete की गई चीज़ सामान्य GUI Trash/Recycle Bin workflow में जरूरी नहीं कि जाए।

इसलिए destructive commands run करने से पहले path carefully check करें।

विशेष रूप से:

Code
rm -rf

बहुत powerful और potentially dangerous है।

Beginner को इसे बिना समझे use नहीं करना चाहिए।


clear — Terminal साफ करें#

Terminal screen को साफ करने के लिए:

Code
clear

यह screen पर दिखाई दे रहे previous output को साफ करता है।

यह files या commands को delete नहीं करता।


Command History#

Shell आमतौर पर previous commands की history maintain करता है।

History देखने के लिए Bash जैसे shells में:

Code
history

Keyboard में अक्सर Up Arrow ↑ दबाकर previous command वापस लाई जा सकती है।

यह repetitive commands के लिए बहुत useful है।


Tab Completion#

Terminal में typing fast करने के लिए Tab completion बहुत useful feature है।

Example:

Code
cd proj

फिर Tab दबाने पर shell available matching directory को complete कर सकता है।

इसके फायदे:

  • Typing कम होती है
  • Spelling mistakes कम होती हैं
  • Long paths जल्दी type होते हैं
  • Commands faster run होती हैं

अगर आप developer हैं, तो Tab completion को habit बनाना काफी useful है।


Command के अंदर Help कैसे लें?#

कई commands में help options available होते हैं।

Common example:

Code
command --help

Example:

Code
git --help

या:

Code
npm --help

Unix-like systems में documentation देखने के लिए कई commands के साथ man भी available होता है:

Code
man ls

यह ls command का manual खोल सकता है।


echo — Text Print करना#

Code
echo "Hello World"

Output:

Code
Hello World

echo variables की value देखने और shell scripts में output generate करने के लिए भी commonly use होता है।


Environment Variables क्या हैं?#

Environment variables ऐसे named values होते हैं जिन्हें processes और applications configuration के लिए use कर सकती हैं।

Example:

Code
PORT=3000
NODE_ENV=development

Unix-like shells में किसी environment variable की value देखने का common तरीका:

Code
echo $PORT

अगर variable set है तो उसका value output में आ सकता है।

Practical Example

किसी application में:

Code
API_URL=https://example.com

जैसी configuration environment variable के through provide की जा सकती है।

Sensitive values जैसे passwords और API keys को source code में hard-code करने से बचना चाहिए।


PATH क्या है?#

PATH एक important environment variable है।

जब आप कोई command type करते हैं:

Code
node

तो shell को यह पता लगाना होता है कि node executable कहाँ मौजूद है।

PATH में directories की list होती है जहाँ shell executable programs खोज सकता है।

Unix-like systems में देखने के लिए:

Code
echo $PATH

Windows PowerShell में:

Code
$env:Path

Simple Example

अगर किसी executable का location PATH में available है, तो आप उसे full path लिखे बिना command की तरह run कर सकते हैं।


Processes क्या होते हैं?#

जब कोई program run होता है, operating system उसे एक process के रूप में manage कर सकता है।

Example:

Code
node app.js

यह command Node.js application start कर सकती है।

जब application चल रही होती है, तो उसका process active हो सकता है।

Terminal में long-running process को stop करने के लिए commonly:

Code
Ctrl + C

use किया जाता है।


Background Process#

कुछ shell environments में command को background में run किया जा सकता है।

Unix-like shells में example:

Code
npm run dev &

यह command को background में भेज सकता है।

लेकिन development workflows में process management के लिए dedicated tools भी use किए जा सकते हैं।


Pipes | क्या हैं?#

Pipe Shell की सबसे useful concepts में से एक है।

Pipe का symbol:

Code
|

एक command के output को दूसरी command के input के रूप में connect कर सकता है।

Example:

Code
ls | grep ".js"

Conceptually:

Code
ls
 ↓
output
 ↓
grep
 ↓
filtered output

यानी पहली command का output दूसरी command process करती है।

इसे ऐसे समझिए:

एक command का result → दूसरी command का input


Redirection क्या है?#

Normally command का output Terminal पर दिखाई देता है।

Redirection से output को file में भेजा जा सकता है।

Example:

Code
echo "Hello" > hello.txt

यह output को hello.txt में लिख सकता है।

> और >> में Difference

Code
echo "Hello" > file.txt

> output को file में write करता है और existing content overwrite कर सकता है।

Code
echo "World" >> file.txt

>> existing content के end में output append करता है।

याद रखें

Code
>   = overwrite
>>  = append

Standard Input, Output और Error#

Command-line programs के साथ तीन important streams commonly associated होते हैं:

StreamMeaning
stdinStandard input
stdoutStandard output
stderrStandard error

Simple flow:

Code
Input
 ↓
Program
 ↓
Output / Error

इस concept को समझना pipes और redirection को समझने में बहुत helpful है।


grep — Text Search करना#

Unix-like environments में grep text patterns search करने के लिए commonly use होता है।

Example:

Code
grep "error" app.log

यह app.log में error pattern वाली matching lines खोज सकता है।

Pipe के साथ:

Code
cat app.log | grep "error"

हालाँकि कई cases में direct file argument ज्यादा simple होता है:

Code
grep "error" app.log

find — Files Search करना#

Unix-like systems में files/directories खोजने के लिए:

Code
find . -name "app.js"

यह current directory (.) से app.js नाम की matching file खोज सकता है।

Large projects में file discovery के लिए यह काफी useful command है।


whoami#

Current user का username देखने के लिए:

Code
whoami

Example output:

Code
user

यह useful हो सकता है जब आप server या shared environment में काम कर रहे हों और verify करना चाहते हों कि आप किस account के context में command चला रहे हैं।


uname#

Unix-like systems में system information देखने के लिए:

Code
uname

More information के लिए:

Code
uname -a

Output operating system/kernel environment के बारे में information दे सकता है।


which / Command Location#

किस executable को shell use कर रहा है, यह पता लगाने के लिए Unix-like systems में:

Code
which node

यह node executable का path दिखा सकता है, अगर वह PATH के through available है।

कुछ environments में command -v भी command resolution check करने के लिए useful है:

Code
command -v node

Terminal में Common Keyboard Shortcuts#

Terminal productivity के लिए कुछ shortcuts बहुत useful हैं।

ShortcutCommon Use
↑Previous command
↓Next command
TabAuto-completion
Ctrl + CRunning command interrupt करना
Ctrl + LScreen clear करने जैसा effect
Ctrl + DEOF / shell exit context में useful
Ctrl + ALine के beginning पर जाना
Ctrl + ELine के end पर जाना

कुछ shortcuts shell और terminal emulator के अनुसार अलग behavior कर सकते हैं।


Linux/macOS और Windows में Difference#

Terminal concepts कई operating systems में similar हैं, लेकिन commands हमेशा identical नहीं होतीं।

Linux/macOS

Common shells:

Code
Bash
Zsh
Fish

Examples:

Code
pwd
ls
cp
mv
rm

Windows PowerShell

PowerShell की अपनी commands और aliases हैं।

Examples:

Code
Get-Location
Get-ChildItem
Copy-Item
Move-Item
Remove-Item

PowerShell में कुछ familiar aliases भी उपलब्ध हो सकते हैं।

Windows CMD

Command Prompt एक अलग command-line environment है और इसकी syntax PowerShell तथा Unix shells से अलग है।

Important Point

अगर कोई tutorial कहता है:

Code
ls

तो यह assume न करें कि हर Windows environment में exactly उसी तरह behave करेगा।


Terminal में Developer का Typical Workflow#

एक developer का basic workflow कुछ ऐसा हो सकता है:

Code
Open Terminal
    ↓
Check current location
    ↓
Go to project
    ↓
Check files
    ↓
Install dependencies
    ↓
Run application
    ↓
Read output/errors
    ↓
Make changes
    ↓
Run tests/build

Example:

Code
pwd
ls
cd my-project
npm install
npm run dev

यह सिर्फ example workflow है। Actual commands project की technology पर depend करेंगी।


Practical Example: नया Project Folder बनाना#

मान लीजिए आपको एक नया project folder बनाना है।

Step 1 — Current location देखें

Code
pwd

Step 2 — Existing folders देखें

Code
ls

Step 3 — नया folder बनाएँ

Code
mkdir my-project

Step 4 — उसके अंदर जाएँ

Code
cd my-project

Step 5 — Location verify करें

Code
pwd

Step 6 — एक file बनाएँ

Code
touch README.md

Step 7 — Files check करें

Code
ls

अब आपको कुछ ऐसा दिख सकता है:

Code
README.md

Practical Example: File Create → Read → Rename#

एक simple workflow:

Code
touch notes.txt

File create करें।

फिर:

Code
echo "Terminal सीख रहा हूँ" > notes.txt

Content लिखें।

फिर:

Code
cat notes.txt

Content देखें।

Output:

Code
Terminal सीख रहा हूँ

अब rename करें:

Code
mv notes.txt terminal-notes.txt

और verify करें:

Code
ls

Common Terminal Mistakes#

1. Current Directory Check किए बिना Command Run करना

कई बार beginner को लगता है कि वह सही folder में है।

पहले:

Code
pwd

फिर:

Code
ls

करना useful habit है।


2. cd और ls को confuse करना

Code
cd = directory change
ls = directory contents देखना

3. Relative और Absolute Path को confuse करना

Code
app

और:

Code
/Users/user/projects/app

same syntax नहीं हैं।

एक relative path है, दूसरा absolute path है।


4. rm को बिना सोचे Use करना

Delete commands destructive हो सकती हैं।

पहले path verify करें:

Code
pwd
ls

फिर destructive operation करें।


5. Error Message को Ignore करना

अगर command fail होती है तो सिर्फ command दोबारा run करने के बजाय error पढ़ें।

Example:

Code
command not found
permission denied
no such file or directory

इन messages में अक्सर problem का useful clue होता है।


Common Terminal Errors#

command not found

Example:

Code
node: command not found

इसका मतलब हो सकता है कि command उपलब्ध नहीं है या executable PATH में नहीं मिल रहा।

Check:

Code
command -v node

No such file or directory

इसका मतलब अक्सर specified path/file मौजूद नहीं है या path गलत है।

Check करें:

Code
pwd
ls

फिर path दोबारा verify करें।


Permission denied

इसका मतलब current user/process के पास required permission नहीं हो सकती।

ऐसे case में blindly elevated privileges use करने के बजाय पहले समझें कि permission क्यों required है।


Terminal Security Tips#

Terminal powerful है, इसलिए commands carefully run करनी चाहिए।

1. Unknown Commands Blindly Run न करें

Internet से मिली command को copy-paste करने से पहले समझें कि वह क्या कर रही है।

2. Destructive Commands Carefully Use करें

विशेषकर:

Code
rm

और recursive/force options वाले commands।

3. Secrets को Command History में Expose न करें

Passwords और API keys को directly command arguments में डालने से वे history या process information में expose हो सकते हैं।

4. sudo को समझकर Use करें

Linux/macOS में sudo command को elevated privileges के साथ operation execute करने के लिए use किया जा सकता है।

हर command के आगे sudo लगाना good practice नहीं है।

पहले समझें कि elevated permission की जरूरत क्यों है।


Terminal में Permissions का Basic Concept#

Unix-like systems में files और directories के साथ permissions associated हो सकती हैं।

Common permission concepts:

Code
r = read
w = write
x = execute

Example:

Code
rwx

का मतलब:

Code
read + write + execute

Permissions समझना खासकर Linux servers पर काम करते समय important है।


chmod का Basic Idea#

Unix-like systems में chmod file permissions change करने के लिए use होता है।

Example:

Code
chmod +x script.sh

यह script को executable permission देने के लिए commonly use किया जाता है।

फिर script को execute किया जा सकता है:

Code
./script.sh

Permissions को बिना समझे overly broad access देना avoid करें।


Shell Script क्या है?#

जब हम multiple shell commands को एक file में रखकर automatically execute करते हैं, तो उसे Shell Script कहा जा सकता है।

Example:

Code
#!/bin/bash

echo "Starting..."
pwd
ls
echo "Done"

ऐसी file को .sh extension के साथ save किया जा सकता है।

Example:

Code
setup.sh

Shell scripting automation के लिए useful है।


Terminal में sudo क्या है?#

Unix-like systems में:

Code
sudo command

किसी command को elevated privileges के साथ run करने के लिए commonly use किया जाता है।

Example:

Code
sudo apt update

लेकिन sudo का exact availability और behavior operating system तथा configuration पर depend करता है।

याद रखने वाली बात

sudo = higher privileges के साथ command run करने का mechanism

इसे security bypass समझना गलत है।


Terminal और Git का Connection#

Developers के लिए Terminal और Git साथ-साथ बहुत commonly use होते हैं।

Example:

Code
git status

या:

Code
git add .
git commit -m "Update feature"

Git खुद Terminal नहीं है।

Code
Terminal = Interface
Shell = Command interpreter
Git = Version Control System

Terminal से Git commands execute की जाती हैं।


Terminal और Package Managers#

Modern development में package managers भी Terminal से commonly use किए जाते हैं।

Examples:

Code
npm install

Node.js ecosystem में।

या:

Code
composer install

PHP ecosystem में।

यहाँ Terminal सिर्फ command execute करने का interface है; actual काम संबंधित package manager करता है।


Terminal क्यों सीखना चाहिए?#

अगर आप development, DevOps, Linux या server management सीखना चाहते हैं तो Terminal बहुत useful skill है।

Terminal से आप:

  • Projects navigate कर सकते हैं
  • Files manage कर सकते हैं
  • Git use कर सकते हैं
  • Packages install कर सकते हैं
  • Applications run कर सकते हैं
  • Logs पढ़ सकते हैं
  • Servers manage कर सकते हैं
  • Scripts चला सकते हैं
  • Automation कर सकते हैं
  • Development workflows तेज कर सकते हैं

GUI कई काम आसान बनाता है, लेकिन Terminal आपको कई operations पर ज्यादा direct control देता है।


Quick Reference#

Navigation

Commandकाम
pwdCurrent directory दिखाता है
lsFiles/directories दिखाता है
cd folderDirectory में जाता है
cd ..Parent directory में जाता है
cd ~Home directory पर जाता है
cd /pathSpecific path पर जाता है

Files और Directories

Commandकाम
mkdir folderDirectory बनाता है
touch fileEmpty file create/update करता है
cat fileFile content दिखाता है
cp file destFile copy करता है
mv old newMove या rename करता है
rm fileFile delete करता है

Search / Information

Commandकाम
findFiles/directories search करता है
grepText pattern search करता है
whoamiCurrent user दिखाता है
whichExecutable का location दिखा सकता है
historyCommand history दिखाता है
echoText/value output करता है

Shell Concepts

ConceptMeaning
``
>Output overwrite/redirection
>>Output append
$VAREnvironment variable reference
.Current directory
..Parent directory
~Home directory

Terminal Commands याद रखने का आसान तरीका#

इन commands को पहले master करें:

Code
pwd
↓
ls
↓
cd
↓
mkdir
↓
touch
↓
cat
↓
cp
↓
mv
↓
rm

फिर:

Code
grep
find
echo
history
chmod

और उसके बाद:

Code
pipes
redirection
environment variables
processes
shell scripting

इस तरह सीखने पर commands सिर्फ याद नहीं होंगी, बल्कि उनका purpose भी समझ आएगा।


Knowledge Check#

Beginner

  1. Terminal और Shell में क्या difference है?
  2. pwd command क्या करती है?
  3. ls का क्या काम है?
  4. cd .. कहाँ ले जाता है?
  5. Absolute path और relative path में क्या difference है?

Intermediate

  1. > और >> में क्या difference है?
  2. Pipe | का क्या purpose है?
  3. Environment variable क्या होता है?
  4. PATH क्यों important है?
  5. cp और mv में क्या difference है?

Advanced

  1. Shell command को executable कैसे खोजता है?
  2. stdout और stderr क्या हैं?
  3. File permissions में r, w और x का क्या मतलब है?
  4. Shell script किस problem को solve कर सकती है?
  5. sudo का उपयोग कब और क्यों किया जाता है?

Practice Exercises#

अगर आप beginner हैं तो ये exercises खुद Terminal में try करें।

Exercise 1 — Directory Navigation

  1. एक terminal-practice folder बनाएँ।
  2. उसके अंदर जाएँ।
  3. Current location check करें।
  4. वापस parent directory में जाएँ।

Useful commands:

Code
mkdir terminal-practice
cd terminal-practice
pwd
cd ..

Exercise 2 — File Management

  1. notes.txt बनाएं।
  2. उसमें एक line लिखें।
  3. उसका content देखें।
  4. उसका नाम बदलें।
  5. फिर files की list देखें।

Exercise 3 — Pipes

एक command का output दूसरी command तक pipe करने की कोशिश करें।

Example:

Code
ls | grep ".js"

समझने की कोशिश करें कि पहले command का output कहाँ जा रहा है।

Exercise 4 — Redirection

Try करें:

Code
echo "Hello Terminal" > hello.txt

फिर:

Code
cat hello.txt

अब:

Code
echo "Second Line" >> hello.txt

और फिर:

Code
cat hello.txt

Observe करें कि > और >> में क्या difference आया।


Summary#

Terminal एक text-based interface है जिसके through हम computer के साथ commands के जरिए interact कर सकते हैं।

Shell वह program है जो commands को interpret करके operating system से उनका काम करवाता है।

सबसे पहले इन concepts को समझें:

Code
Terminal
↓
Shell
↓
Command
↓
Path
↓
Files & Directories
↓
Processes
↓
Pipes
↓
Redirection
↓
Environment Variables
↓
Permissions
↓
Shell Scripts

सबसे important beginner commands:

Code
pwd
ls
cd
mkdir
touch
cat
cp
mv
rm

याद रखने वाली बात:

Terminal सीखना सिर्फ commands याद करना नहीं है। असली goal यह समझना है कि command क्या कर रही है, किस location पर कर रही है और उसका output कहाँ जा रहा है।