DouglasMourray's picture
Add 3 files
07459ab verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Terminal Commands Library</title>
<script src="https://cdn.tailwindcss.com"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<style>
.command-card {
transition: all 0.2s ease;
}
.command-card:hover {
transform: translateY(-2px);
box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}
.copy-btn {
opacity: 0;
transition: opacity 0.2s ease;
}
.command-card:hover .copy-btn {
opacity: 1;
}
.tag {
transition: all 0.2s ease;
}
.tag:hover {
transform: scale(1.05);
}
.search-highlight {
background-color: #FEF08A;
padding: 0 2px;
border-radius: 2px;
}
.category-badge {
position: absolute;
top: -10px;
right: 10px;
font-size: 0.7rem;
padding: 2px 8px;
border-radius: 9999px;
}
</style>
</head>
<body class="bg-gray-50 min-h-screen">
<div class="container mx-auto px-4 py-8">
<!-- Header -->
<header class="mb-10 text-center">
<h1 class="text-4xl font-bold text-gray-800 mb-2">
<i class="fas fa-terminal mr-3 text-indigo-600"></i>
Terminal Commands Library
</h1>
<p class="text-gray-600 max-w-2xl mx-auto">
Search and discover useful terminal commands for various operating systems and tools.
Click any command to copy it to your clipboard.
</p>
</header>
<!-- Search and Filter -->
<div class="mb-8 bg-white rounded-xl shadow-md p-6">
<div class="flex flex-col md:flex-row gap-4">
<div class="flex-1 relative">
<div class="absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none">
<i class="fas fa-search text-gray-400"></i>
</div>
<input
type="text"
id="searchInput"
placeholder="Search commands (e.g. 'git', 'find files')..."
class="w-full pl-10 pr-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500"
>
</div>
<select id="osFilter" class="border border-gray-300 rounded-lg px-4 py-3 focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500">
<option value="all">All OS</option>
<option value="linux">Linux</option>
<option value="macos">macOS</option>
<option value="windows">Windows</option>
</select>
<select id="categoryFilter" class="border border-gray-300 rounded-lg px-4 py-3 focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500">
<option value="all">All Categories</option>
<option value="file">File Operations</option>
<option value="network">Network</option>
<option value="system">System Info</option>
<option value="process">Processes</option>
<option value="git">Git</option>
<option value="docker">Docker</option>
<option value="permissions">Permissions</option>
<option value="compression">Compression</option>
<option value="text">Text Processing</option>
<option value="package">Package Managers</option>
<option value="ssh">SSH</option>
</select>
</div>
<div class="mt-4 flex flex-wrap gap-2" id="popularTags">
<span class="text-sm text-gray-500 mr-2">Popular:</span>
<button class="tag px-3 py-1 bg-indigo-100 text-indigo-800 rounded-full text-sm hover:bg-indigo-200" data-tag="git">Git</button>
<button class="tag px-3 py-1 bg-indigo-100 text-indigo-800 rounded-full text-sm hover:bg-indigo-200" data-tag="docker">Docker</button>
<button class="tag px-3 py-1 bg-indigo-100 text-indigo-800 rounded-full text-sm hover:bg-indigo-200" data-tag="permissions">Permissions</button>
<button class="tag px-3 py-1 bg-indigo-100 text-indigo-800 rounded-full text-sm hover:bg-indigo-200" data-tag="find">Find Files</button>
<button class="tag px-3 py-1 bg-indigo-100 text-indigo-800 rounded-full text-sm hover:bg-indigo-200" data-tag="process">Processes</button>
<button class="tag px-3 py-1 bg-indigo-100 text-indigo-800 rounded-full text-sm hover:bg-indigo-200" data-tag="network">Network</button>
<button class="tag px-3 py-1 bg-indigo-100 text-indigo-800 rounded-full text-sm hover:bg-indigo-200" data-tag="ssh">SSH</button>
</div>
</div>
<!-- Stats -->
<div class="mb-6 flex flex-wrap gap-4 justify-center">
<div class="bg-white rounded-lg shadow p-4 text-center min-w-[120px]">
<div class="text-2xl font-bold text-indigo-600" id="totalCommands">0</div>
<div class="text-gray-500 text-sm">Total Commands</div>
</div>
<div class="bg-white rounded-lg shadow p-4 text-center min-w-[120px]">
<div class="text-2xl font-bold text-indigo-600" id="linuxCount">0</div>
<div class="text-gray-500 text-sm">Linux</div>
</div>
<div class="bg-white rounded-lg shadow p-4 text-center min-w-[120px]">
<div class="text-2xl font-bold text-indigo-600" id="macosCount">0</div>
<div class="text-gray-500 text-sm">macOS</div>
</div>
<div class="bg-white rounded-lg shadow p-4 text-center min-w-[120px]">
<div class="text-2xl font-bold text-indigo-600" id="windowsCount">0</div>
<div class="text-gray-500 text-sm">Windows</div>
</div>
</div>
<!-- Commands Grid -->
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6" id="commandsContainer">
<!-- Commands will be inserted here by JavaScript -->
</div>
<!-- Empty State -->
<div id="emptyState" class="text-center py-16 hidden">
<i class="fas fa-search fa-3x text-gray-300 mb-4"></i>
<h3 class="text-xl font-medium text-gray-700">No commands found</h3>
<p class="text-gray-500 mt-2">Try adjusting your search or filters</p>
</div>
</div>
<!-- Toast Notification -->
<div id="toast" class="fixed bottom-4 right-4 bg-green-500 text-white px-6 py-3 rounded-lg shadow-lg transform translate-y-10 opacity-0 transition-all duration-300 flex items-center">
<i class="fas fa-check-circle mr-2"></i>
<span>Command copied to clipboard!</span>
</div>
<script>
// Comprehensive command data
const commands = [
// File Operations
{
id: 1,
command: "ls -la",
description: "List all files and directories (including hidden ones) with details",
os: ["linux", "macos"],
category: "file",
tags: ["list", "directory", "files"],
usage: "ls -la /path/to/directory"
},
{
id: 2,
command: "cd ~",
description: "Change to home directory",
os: ["linux", "macos", "windows"],
category: "file",
tags: ["navigation", "directory"],
usage: "cd ~"
},
{
id: 3,
command: "pwd",
description: "Print working directory (show current directory path)",
os: ["linux", "macos", "windows"],
category: "file",
tags: ["path", "directory"],
usage: "pwd"
},
{
id: 4,
command: "mkdir -p path/to/dir",
description: "Create directory and all parent directories if they don't exist",
os: ["linux", "macos", "windows"],
category: "file",
tags: ["create", "directory"],
usage: "mkdir -p project/src/components"
},
{
id: 5,
command: "cp -r source destination",
description: "Copy files and directories recursively",
os: ["linux", "macos"],
category: "file",
tags: ["copy", "files"],
usage: "cp -r old_folder new_folder"
},
{
id: 6,
command: "mv oldname newname",
description: "Move or rename files and directories",
os: ["linux", "macos"],
category: "file",
tags: ["move", "rename"],
usage: "mv oldname.txt newname.txt"
},
{
id: 7,
command: "rm -rf directory",
description: "Remove directory and its contents recursively (forcefully)",
os: ["linux", "macos"],
category: "file",
tags: ["delete", "remove"],
usage: "rm -rf old_project"
},
{
id: 8,
command: "find /path -name \"*.txt\"",
description: "Find all .txt files in specified directory and subdirectories",
os: ["linux", "macos"],
category: "file",
tags: ["find", "search", "file"],
usage: "find ~/Documents -name \"*.txt\""
},
{
id: 9,
command: "locate filename",
description: "Find files by name using prebuilt database (faster than find)",
os: ["linux", "macos"],
category: "file",
tags: ["find", "search", "file"],
usage: "locate myfile.txt"
},
{
id: 10,
command: "touch filename",
description: "Create empty file or update file's access/modification time",
os: ["linux", "macos"],
category: "file",
tags: ["create", "file"],
usage: "touch newfile.txt"
},
{
id: 11,
command: "cat file1 file2 > combined",
description: "Concatenate files and print/output to another file",
os: ["linux", "macos"],
category: "file",
tags: ["concatenate", "view"],
usage: "cat part1.txt part2.txt > complete.txt"
},
{
id: 12,
command: "less filename",
description: "View file contents with pagination (press q to quit)",
os: ["linux", "macos"],
category: "file",
tags: ["view", "pager"],
usage: "less large_log_file.log"
},
{
id: 13,
command: "head -n 10 filename",
description: "Show first 10 lines of a file",
os: ["linux", "macos"],
category: "file",
tags: ["view", "head"],
usage: "head -n 10 access.log"
},
{
id: 14,
command: "tail -f filename",
description: "Show last lines of a file and follow for new additions",
os: ["linux", "macos"],
category: "file",
tags: ["view", "tail", "logs"],
usage: "tail -f /var/log/syslog"
},
{
id: 15,
command: "grep -r \"search term\" /path",
description: "Recursively search for text in files within a directory",
os: ["linux", "macos"],
category: "file",
tags: ["search", "text", "file"],
usage: "grep -r \"error\" /var/log/"
},
{
id: 16,
command: "diff file1 file2",
description: "Compare two files line by line",
os: ["linux", "macos"],
category: "file",
tags: ["compare", "difference"],
usage: "diff original.txt modified.txt"
},
{
id: 17,
command: "wc -l filename",
description: "Count lines in a file",
os: ["linux", "macos"],
category: "file",
tags: ["count", "lines"],
usage: "wc -l users.csv"
},
{
id: 18,
command: "du -sh *",
description: "Show disk usage of files and directories in human-readable format",
os: ["linux", "macos"],
category: "file",
tags: ["disk", "usage"],
usage: "du -sh /home/*"
},
{
id: 19,
command: "df -h",
description: "Show disk filesystem information in human-readable format",
os: ["linux", "macos"],
category: "file",
tags: ["disk", "space"],
usage: "df -h"
},
{
id: 20,
command: "ln -s target linkname",
description: "Create symbolic link (shortcut) to target file/directory",
os: ["linux", "macos"],
category: "file",
tags: ["link", "symlink"],
usage: "ln -s /var/www/html myweb"
},
// Permissions
{
id: 21,
command: "chmod 755 <file>",
description: "Change file permissions to rwxr-xr-x (owner can read/write/execute, others can read/execute)",
os: ["linux", "macos"],
category: "permissions",
tags: ["permissions", "file"],
usage: "chmod 755 script.sh"
},
{
id: 22,
command: "chmod +x filename",
description: "Make file executable",
os: ["linux", "macos"],
category: "permissions",
tags: ["permissions", "executable"],
usage: "chmod +x install.sh"
},
{
id: 23,
command: "chown user:group file",
description: "Change file owner and group",
os: ["linux", "macos"],
category: "permissions",
tags: ["owner", "permissions"],
usage: "chown www-data:www-data index.php"
},
{
id: 24,
command: "sudo !!",
description: "Run previous command with sudo privileges",
os: ["linux", "macos"],
category: "permissions",
tags: ["sudo", "privileges"],
usage: "sudo !!"
},
{
id: 25,
command: "umask 022",
description: "Set default permissions for newly created files (777-022=755)",
os: ["linux", "macos"],
category: "permissions",
tags: ["permissions", "default"],
usage: "umask 022"
},
// Network
{
id: 26,
command: "ping google.com",
description: "Check network connectivity to a host",
os: ["linux", "macos", "windows"],
category: "network",
tags: ["network", "diagnostics"],
usage: "ping google.com"
},
{
id: 27,
command: "ifconfig",
description: "Display network interface configuration (Linux/macOS)",
os: ["linux", "macos"],
category: "network",
tags: ["network", "ip"],
usage: "ifconfig"
},
{
id: 28,
command: "ipconfig /all",
description: "Display all network interface configuration (Windows)",
os: ["windows"],
category: "network",
tags: ["network", "ip"],
usage: "ipconfig /all"
},
{
id: 29,
command: "netstat -tulnp",
description: "List all listening ports and associated programs",
os: ["linux", "macos"],
category: "network",
tags: ["ports", "network"],
usage: "netstat -tulnp"
},
{
id: 30,
command: "traceroute google.com",
description: "Trace route packets take to a network host",
os: ["linux", "macos"],
category: "network",
tags: ["network", "diagnostics"],
usage: "traceroute google.com"
},
{
id: 31,
command: "dig example.com",
description: "DNS lookup utility",
os: ["linux", "macos"],
category: "network",
tags: ["dns", "network"],
usage: "dig example.com"
},
{
id: 32,
command: "nslookup example.com",
description: "Query Internet name servers interactively",
os: ["linux", "macos", "windows"],
category: "network",
tags: ["dns", "network"],
usage: "nslookup example.com"
},
{
id: 33,
command: "wget http://example.com/file",
description: "Download file from the web",
os: ["linux", "macos"],
category: "network",
tags: ["download", "web"],
usage: "wget https://example.com/file.zip"
},
{
id: 34,
command: "curl -O http://example.com/file",
description: "Download file using curl",
os: ["linux", "macos"],
category: "network",
tags: ["download", "web"],
usage: "curl -O https://example.com/file.zip"
},
{
id: 35,
command: "ssh user@host",
description: "Connect to a remote server using SSH",
os: ["linux", "macos", "windows"],
category: "ssh",
tags: ["ssh", "remote"],
usage: "ssh [email protected]"
},
{
id: 36,
command: "scp file user@host:path",
description: "Securely copy files to remote host",
os: ["linux", "macos"],
category: "ssh",
tags: ["ssh", "copy"],
usage: "scp backup.tar.gz [email protected]:/backups/"
},
{
id: 37,
command: "rsync -avz source destination",
description: "Synchronize files/directories between systems efficiently",
os: ["linux", "macos"],
category: "ssh",
tags: ["sync", "copy"],
usage: "rsync -avz /local/dir/ user@remote:/remote/dir/"
},
// System Info
{
id: 38,
command: "uname -a",
description: "Show system and kernel information",
os: ["linux", "macos"],
category: "system",
tags: ["system", "info"],
usage: "uname -a"
},
{
id: 39,
command: "top",
description: "Display dynamic real-time information about running processes",
os: ["linux", "macos"],
category: "system",
tags: ["process", "monitoring"],
usage: "top"
},
{
id: 40,
command: "htop",
description: "Interactive process viewer (more user-friendly than top)",
os: ["linux", "macos"],
category: "system",
tags: ["process", "monitoring"],
usage: "htop"
},
{
id: 41,
command: "free -h",
description: "Show memory usage in human-readable format",
os: ["linux", "macos"],
category: "system",
tags: ["memory", "usage"],
usage: "free -h"
},
{
id: 42,
command: "uptime",
description: "Show how long system has been running and load average",
os: ["linux", "macos"],
category: "system",
tags: ["uptime", "load"],
usage: "uptime"
},
{
id: 43,
command: "whoami",
description: "Print current user name",
os: ["linux", "macos", "windows"],
category: "system",
tags: ["user", "info"],
usage: "whoami"
},
{
id: 44,
command: "history",
description: "Show command history",
os: ["linux", "macos"],
category: "system",
tags: ["history", "commands"],
usage: "history"
},
{
id: 45,
command: "date",
description: "Show current date and time",
os: ["linux", "macos", "windows"],
category: "system",
tags: ["date", "time"],
usage: "date"
},
{
id: 46,
command: "cal",
description: "Show calendar",
os: ["linux", "macos"],
category: "system",
tags: ["calendar"],
usage: "cal"
},
{
id: 47,
command: "lscpu",
description: "Display CPU information",
os: ["linux", "macos"],
category: "system",
tags: ["cpu", "hardware"],
usage: "lscpu"
},
{
id: 48,
command: "lsblk",
description: "List block devices (disks and partitions)",
os: ["linux", "macos"],
category: "system",
tags: ["disk", "partitions"],
usage: "lsblk"
},
{
id: 49,
command: "lspci",
description: "List all PCI devices",
os: ["linux", "macos"],
category: "system",
tags: ["hardware", "pci"],
usage: "lspci"
},
{
id: 50,
command: "lsusb",
description: "List USB devices",
os: ["linux", "macos"],
category: "system",
tags: ["hardware", "usb"],
usage: "lsusb"
},
// Processes
{
id: 51,
command: "ps aux",
description: "List all running processes",
os: ["linux", "macos"],
category: "process",
tags: ["process", "list"],
usage: "ps aux"
},
{
id: 52,
command: "kill -9 <pid>",
description: "Forcefully terminate a process by its process ID",
os: ["linux", "macos"],
category: "process",
tags: ["process", "terminate"],
usage: "kill -9 1234"
},
{
id: 53,
command: "killall processname",
description: "Kill all processes by name",
os: ["linux", "macos"],
category: "process",
tags: ["process", "terminate"],
usage: "killall nginx"
},
{
id: 54,
command: "pkill -f pattern",
description: "Kill processes by matching pattern",
os: ["linux", "macos"],
category: "process",
tags: ["process", "terminate"],
usage: "pkill -f \"python script.py\""
},
{
id: 55,
command: "bg",
description: "Send process to background",
os: ["linux", "macos"],
category: "process",
tags: ["process", "background"],
usage: "bg"
},
{
id: 56,
command: "fg",
description: "Bring background process to foreground",
os: ["linux", "macos"],
category: "process",
tags: ["process", "foreground"],
usage: "fg"
},
{
id: 57,
command: "jobs",
description: "List background jobs",
os: ["linux", "macos"],
category: "process",
tags: ["jobs", "background"],
usage: "jobs"
},
{
id: 58,
command: "nohup command &",
description: "Run command immune to hangups, with output to nohup.out",
os: ["linux", "macos"],
category: "process",
tags: ["process", "background"],
usage: "nohup python script.py &"
},
{
id: 59,
command: "time command",
description: "Measure time taken by command to execute",
os: ["linux", "macos"],
category: "process",
tags: ["time", "performance"],
usage: "time ls -lR /"
},
{
id: 60,
command: "watch -n 1 command",
description: "Execute command repeatedly every second",
os: ["linux", "macos"],
category: "process",
tags: ["monitor", "watch"],
usage: "watch -n 1 free -h"
},
// Compression
{
id: 61,
command: "tar -czvf archive.tar.gz dir",
description: "Create gzipped tar archive of directory",
os: ["linux", "macos"],
category: "compression",
tags: ["archive", "compress"],
usage: "tar -czvf backup.tar.gz /home/user"
},
{
id: 62,
command: "tar -xzvf archive.tar.gz",
description: "Extract gzipped tar archive",
os: ["linux", "macos"],
category: "compression",
tags: ["extract", "uncompress"],
usage: "tar -xzvf backup.tar.gz"
},
{
id: 63,
command: "zip -r archive.zip dir",
description: "Create zip archive of directory",
os: ["linux", "macos", "windows"],
category: "compression",
tags: ["archive", "compress"],
usage: "zip -r project.zip project/"
},
{
id: 64,
command: "unzip archive.zip",
description: "Extract zip archive",
os: ["linux", "macos", "windows"],
category: "compression",
tags: ["extract", "uncompress"],
usage: "unzip backup.zip"
},
{
id: 65,
command: "gzip file",
description: "Compress file (replaces original with .gz version)",
os: ["linux", "macos"],
category: "compression",
tags: ["compress", "gzip"],
usage: "gzip largefile.log"
},
{
id: 66,
command: "gunzip file.gz",
description: "Decompress .gz file",
os: ["linux", "macos"],
category: "compression",
tags: ["decompress", "gunzip"],
usage: "gunzip largefile.log.gz"
},
// Text Processing
{
id: 67,
command: "grep pattern file",
description: "Search for pattern in file",
os: ["linux", "macos"],
category: "text",
tags: ["search", "text"],
usage: "grep \"error\" logfile.txt"
},
{
id: 68,
command: "sed 's/find/replace/g' file",
description: "Find and replace text in file",
os: ["linux", "macos"],
category: "text",
tags: ["replace", "text"],
usage: "sed 's/foo/bar/g' file.txt"
},
{
id: 69,
command: "awk '{print $1}' file",
description: "Print first column of file",
os: ["linux", "macos"],
category: "text",
tags: ["text", "processing"],
usage: "awk '{print $1}' data.csv"
},
{
id: 70,
command: "sort file",
description: "Sort lines in file",
os: ["linux", "macos"],
category: "text",
tags: ["sort", "text"],
usage: "sort names.txt"
},
{
id: 71,
command: "uniq file",
description: "Filter adjacent matching lines from file",
os: ["linux", "macos"],
category: "text",
tags: ["unique", "filter"],
usage: "uniq duplicates.txt"
},
{
id: 72,
command: "cut -d',' -f1 file",
description: "Cut first field from comma-delimited file",
os: ["linux", "macos"],
category: "text",
tags: ["cut", "text"],
usage: "cut -d',' -f1 data.csv"
},
{
id: 73,
command: "tr 'a-z' 'A-Z' < file",
description: "Translate characters to uppercase",
os: ["linux", "macos"],
category: "text",
tags: ["translate", "text"],
usage: "tr 'a-z' 'A-Z' < file.txt"
},
{
id: 74,
command: "tee file",
description: "Pipe output to file and stdout",
os: ["linux", "macos"],
category: "text",
tags: ["pipe", "output"],
usage: "ls -l | tee directory_listing.txt"
},
{
id: 75,
command: "column -t file",
description: "Format text into columns",
os: ["linux", "macos"],
category: "text",
tags: ["format", "columns"],
usage: "column -t data.txt"
},
{
id: 76,
command: "nl file",
description: "Number lines in file",
os: ["linux", "macos"],
category: "text",
tags: ["number", "lines"],
usage: "nl document.txt"
},
// Git
{
id: 77,
command: "git clone <repository-url>",
description: "Clone a remote Git repository to your local machine",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "version control"],
usage: "git clone https://github.com/user/repo.git"
},
{
id: 78,
command: "git status",
description: "Show the working tree status (changed files, staged files, etc.)",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "status"],
usage: "git status"
},
{
id: 79,
command: "git add .",
description: "Add all changed files to staging area",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "add"],
usage: "git add ."
},
{
id: 80,
command: "git commit -m \"message\"",
description: "Commit staged changes with message",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "commit"],
usage: "git commit -m \"Fixed login bug\""
},
{
id: 81,
command: "git push origin main",
description: "Push commits to remote repository",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "push"],
usage: "git push origin main"
},
{
id: 82,
command: "git pull",
description: "Fetch from and integrate with remote repository",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "pull"],
usage: "git pull"
},
{
id: 83,
command: "git branch",
description: "List all branches",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "branch"],
usage: "git branch"
},
{
id: 84,
command: "git checkout -b new-branch",
description: "Create and switch to new branch",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "branch"],
usage: "git checkout -b feature/login"
},
{
id: 85,
command: "git merge branch",
description: "Merge branch into current branch",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "merge"],
usage: "git merge feature/login"
},
{
id: 86,
command: "git log --oneline",
description: "Show commit history in compact format",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "log"],
usage: "git log --oneline"
},
{
id: 87,
command: "git reset --hard HEAD",
description: "Discard all local changes (permanently)",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "reset"],
usage: "git reset --hard HEAD"
},
{
id: 88,
command: "git stash",
description: "Stash changes in dirty working directory",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "stash"],
usage: "git stash"
},
{
id: 89,
command: "git rebase branch",
description: "Reapply commits on top of another branch",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "rebase"],
usage: "git rebase main"
},
{
id: 90,
command: "git remote -v",
description: "List remote repositories",
os: ["linux", "macos", "windows"],
category: "git",
tags: ["git", "remote"],
usage: "git remote -v"
},
// Docker
{
id: 91,
command: "docker ps -a",
description: "List all Docker containers (both running and stopped)",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "containers"],
usage: "docker ps -a"
},
{
id: 92,
command: "docker images",
description: "List all Docker images",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "images"],
usage: "docker images"
},
{
id: 93,
command: "docker run image",
description: "Run a command in a new container",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "run"],
usage: "docker run -it ubuntu bash"
},
{
id: 94,
command: "docker stop container",
description: "Stop one or more running containers",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "stop"],
usage: "docker stop my_container"
},
{
id: 95,
command: "docker rm container",
description: "Remove one or more containers",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "remove"],
usage: "docker rm my_container"
},
{
id: 96,
command: "docker rmi image",
description: "Remove one or more images",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "remove"],
usage: "docker rmi ubuntu"
},
{
id: 97,
command: "docker exec -it container bash",
description: "Run a command in a running container",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "exec"],
usage: "docker exec -it my_container bash"
},
{
id: 98,
command: "docker logs container",
description: "Fetch the logs of a container",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "logs"],
usage: "docker logs my_container"
},
{
id: 99,
command: "docker build -t name .",
description: "Build an image from a Dockerfile",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "build"],
usage: "docker build -t my_image ."
},
{
id: 100,
command: "docker-compose up -d",
description: "Start Docker containers in detached mode using docker-compose",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "compose"],
usage: "docker-compose up -d"
},
{
id: 101,
command: "docker-compose down",
description: "Stop and remove containers, networks, images, and volumes",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "compose"],
usage: "docker-compose down"
},
{
id: 102,
command: "docker volume ls",
description: "List volumes",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "volumes"],
usage: "docker volume ls"
},
{
id: 103,
command: "docker network ls",
description: "List networks",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "networks"],
usage: "docker network ls"
},
{
id: 104,
command: "docker system prune",
description: "Remove unused data",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "cleanup"],
usage: "docker system prune"
},
{
id: 105,
command: "docker inspect container",
description: "Return low-level information on Docker objects",
os: ["linux", "macos", "windows"],
category: "docker",
tags: ["docker", "inspect"],
usage: "docker inspect my_container"
},
// Package Managers
{
id: 106,
command: "apt update",
description: "Refresh package index (Debian/Ubuntu)",
os: ["linux"],
category: "package",
tags: ["apt", "update"],
usage: "apt update"
},
{
id: 107,
command: "apt install package",
description: "Install package (Debian/Ubuntu)",
os: ["linux"],
category: "package",
tags: ["apt", "install"],
usage: "apt install nginx"
},
{
id: 108,
command: "apt remove package",
description: "Remove package (Debian/Ubuntu)",
os: ["linux"],
category: "package",
tags: ["apt", "remove"],
usage: "apt remove nginx"
},
{
id: 109,
command: "apt upgrade",
description: "Upgrade all upgradable packages (Debian/Ubuntu)",
os: ["linux"],
category: "package",
tags: ["apt", "upgrade"],
usage: "apt upgrade"
},
{
id: 110,
command: "yum install package",
description: "Install package (RHEL/CentOS)",
os: ["linux"],
category: "package",
tags: ["yum", "install"],
usage: "yum install httpd"
},
{
id: 111,
command: "yum remove package",
description: "Remove package (RHEL/CentOS)",
os: ["linux"],
category: "package",
tags: ["yum", "remove"],
usage: "yum remove httpd"
},
{
id: 112,
command: "yum update",
description: "Update all packages (RHEL/CentOS)",
os: ["linux"],
category: "package",
tags: ["yum", "update"],
usage: "yum update"
},
{
id: 113,
command: "dnf install package",
description: "Install package (Fedora)",
os: ["linux"],
category: "package",
tags: ["dnf", "install"],
usage: "dnf install nginx"
},
{
id: 114,
command: "pacman -S package",
description: "Install package (Arch Linux)",
os: ["linux"],
category: "package",
tags: ["pacman", "install"],
usage: "pacman -S firefox"
},
{
id: 115,
command: "brew install package",
description: "Install package (macOS)",
os: ["macos"],
category: "package",
tags: ["brew", "install"],
usage: "brew install wget"
},
{
id: 116,
command: "brew upgrade package",
description: "Upgrade package (macOS)",
os: ["macos"],
category: "package",
tags: ["brew", "upgrade"],
usage: "brew upgrade wget"
},
{
id: 117,
command: "npm install package",
description: "Install Node.js package",
os: ["linux", "macos", "windows"],
category: "package",
tags: ["npm", "install"],
usage: "npm install express"
},
{
id: 118,
command: "pip install package",
description: "Install Python package",
os: ["linux", "macos", "windows"],
category: "package",
tags: ["pip", "install"],
usage: "pip install requests"
},
// Windows Specific
{
id: 119,
command: "dir",
description: "List directory contents (Windows)",
os: ["windows"],
category: "file",
tags: ["list", "directory"],
usage: "dir C:\\"
},
{
id: 120,
command: "tasklist",
description: "Display all currently running processes (Windows)",
os: ["windows"],
category: "process",
tags: ["process", "windows"],
usage: "tasklist"
},
{
id: 121,
command: "taskkill /PID pid /F",
description: "Forcefully terminate a process by PID (Windows)",
os: ["windows"],
category: "process",
tags: ["process", "terminate"],
usage: "taskkill /PID 1234 /F"
},
{
id: 122,
command: "systeminfo",
description: "Display detailed system configuration (Windows)",
os: ["windows"],
category: "system",
tags: ["system", "info"],
usage: "systeminfo"
},
{
id: 123,
command: "sfc /scannow",
description: "System File Checker - scans and repairs system files (Windows)",
os: ["windows"],
category: "system",
tags: ["repair", "system"],
usage: "sfc /scannow"
},
{
id: 124,
command: "chkdsk /f",
description: "Check disk for errors and fix them (Windows)",
os: ["windows"],
category: "system",
tags: ["disk", "repair"],
usage: "chkdsk C: /f"
},
{
id: 125,
command: "net user",
description: "Manage user accounts (Windows)",
os: ["windows"],
category: "system",
tags: ["user", "accounts"],
usage: "net user username password /add"
},
{
id: 126,
command: "shutdown /s /t 0",
description: "Shutdown computer immediately (Windows)",
os: ["windows"],
category: "system",
tags: ["shutdown", "power"],
usage: "shutdown /s /t 0"
},
{
id: 127,
command: "mklink /D link target",
description: "Create symbolic link (Windows)",
os: ["windows"],
category: "file",
tags: ["link", "symlink"],
usage: "mklink /D C:\\link C:\\target"
},
{
id: 128,
command: "robocopy source destination /MIR",
description: "Robust file copy with mirror option (Windows)",
os: ["windows"],
category: "file",
tags: ["copy", "files"],
usage: "robocopy C:\\source D:\\backup /MIR"
}
];
// DOM elements
const commandsContainer = document.getElementById('commandsContainer');
const searchInput = document.getElementById('searchInput');
const osFilter = document.getElementById('osFilter');
const categoryFilter = document.getElementById('categoryFilter');
const emptyState = document.getElementById('emptyState');
const toast = document.getElementById('toast');
const totalCommandsEl = document.getElementById('totalCommands');
const linuxCountEl = document.getElementById('linuxCount');
const macosCountEl = document.getElementById('macosCount');
const windowsCountEl = document.getElementById('windowsCount');
const popularTags = document.getElementById('popularTags');
// Category colors
const categoryColors = {
file: 'bg-blue-100 text-blue-800',
network: 'bg-green-100 text-green-800',
system: 'bg-purple-100 text-purple-800',
process: 'bg-red-100 text-red-800',
git: 'bg-orange-100 text-orange-800',
docker: 'bg-indigo-100 text-indigo-800',
permissions: 'bg-yellow-100 text-yellow-800',
compression: 'bg-pink-100 text-pink-800',
text: 'bg-teal-100 text-teal-800',
package: 'bg-gray-100 text-gray-800',
ssh: 'bg-cyan-100 text-cyan-800'
};
// Initialize
function init() {
renderCommands(commands);
updateStats();
// Event listeners
searchInput.addEventListener('input', filterCommands);
osFilter.addEventListener('change', filterCommands);
categoryFilter.addEventListener('change', filterCommands);
// Tag click events
popularTags.addEventListener('click', (e) => {
if (e.target.tagName === 'BUTTON') {
const tag = e.target.getAttribute('data-tag');
searchInput.value = tag;
filterCommands();
}
});
}
// Render commands
function renderCommands(commandsToRender) {
commandsContainer.innerHTML = '';
if (commandsToRender.length === 0) {
emptyState.classList.remove('hidden');
return;
}
emptyState.classList.add('hidden');
commandsToRender.forEach(cmd => {
const osIcons = {
linux: 'fab fa-linux',
macos: 'fab fa-apple',
windows: 'fab fa-windows'
};
const osBadges = cmd.os.map(os => `
<span class="inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-gray-100 text-gray-800">
<i class="${osIcons[os]} mr-1"></i> ${os}
</span>
`).join(' ');
const tags = cmd.tags.map(tag => `
<span class="inline-block bg-gray-100 rounded-full px-2 py-1 text-xs font-medium text-gray-700">${tag}</span>
`).join(' ');
const commandCard = document.createElement('div');
commandCard.className = 'command-card bg-white rounded-xl shadow-md overflow-hidden hover:shadow-lg cursor-pointer relative';
commandCard.innerHTML = `
<div class="category-badge ${categoryColors[cmd.category]}">${cmd.category}</div>
<div class="p-6">
<div class="flex justify-between items-start">
<div class="flex-1">
<h3 class="text-lg font-medium text-gray-900 mb-1 command-text">${cmd.command}</h3>
<div class="flex flex-wrap gap-1 mb-3">${osBadges}</div>
</div>
<button class="copy-btn ml-2 p-2 text-gray-400 hover:text-indigo-600 rounded-full hover:bg-indigo-50" data-command="${cmd.usage || cmd.command}">
<i class="far fa-copy"></i>
</button>
</div>
<p class="text-gray-600 mb-3 description-text">${cmd.description}</p>
${cmd.usage ? `
<div class="bg-gray-50 p-3 rounded-md mb-3">
<p class="text-xs text-gray-500 mb-1">Usage example:</p>
<code class="text-sm text-gray-800 usage-text">${cmd.usage}</code>
</div>
` : ''}
<div class="flex flex-wrap gap-1">${tags}</div>
</div>
`;
// Add click event to copy command
const copyBtn = commandCard.querySelector('.copy-btn');
copyBtn.addEventListener('click', (e) => {
e.stopPropagation();
copyToClipboard(copyBtn.getAttribute('data-command'));
});
// Click anywhere on card to copy main command
commandCard.addEventListener('click', () => {
copyToClipboard(cmd.usage || cmd.command);
});
commandsContainer.appendChild(commandCard);
});
}
// Filter commands based on search and filters
function filterCommands() {
const searchTerm = searchInput.value.toLowerCase();
const osFilterValue = osFilter.value;
const categoryFilterValue = categoryFilter.value;
let filtered = commands.filter(cmd => {
// OS filter
if (osFilterValue !== 'all' && !cmd.os.includes(osFilterValue)) {
return false;
}
// Category filter
if (categoryFilterValue !== 'all' && cmd.category !== categoryFilterValue) {
return false;
}
// Search term
if (searchTerm) {
const inCommand = cmd.command.toLowerCase().includes(searchTerm);
const inDescription = cmd.description.toLowerCase().includes(searchTerm);
const inTags = cmd.tags.some(tag => tag.toLowerCase().includes(searchTerm));
const inUsage = cmd.usage ? cmd.usage.toLowerCase().includes(searchTerm) : false;
if (!inCommand && !inDescription && !inTags && !inUsage) {
return false;
}
}
return true;
});
// Highlight search terms in the results
if (searchTerm) {
filtered = filtered.map(cmd => {
const regex = new RegExp(searchTerm, 'gi');
// Clone the object to avoid modifying the original
const highlightedCmd = {...cmd};
// Highlight in command
highlightedCmd.command = cmd.command.replace(regex, match =>
`<span class="search-highlight">${match}</span>`
);
// Highlight in description
highlightedCmd.description = cmd.description.replace(regex, match =>
`<span class="search-highlight">${match}</span>`
);
// Highlight in usage if exists
if (cmd.usage) {
highlightedCmd.usage = cmd.usage.replace(regex, match =>
`<span class="search-highlight">${match}</span>`
);
}
return highlightedCmd;
});
}
renderCommands(filtered);
}
// Copy text to clipboard
function copyToClipboard(text) {
navigator.clipboard.writeText(text).then(() => {
showToast();
});
}
// Show toast notification
function showToast() {
toast.classList.remove('translate-y-10', 'opacity-0');
toast.classList.add('translate-y-0', 'opacity-100');
setTimeout(() => {
toast.classList.remove('translate-y-0', 'opacity-100');
toast.classList.add('translate-y-10', 'opacity-0');
}, 2000);
}
// Update statistics
function updateStats() {
totalCommandsEl.textContent = commands.length;
linuxCountEl.textContent = commands.filter(cmd => cmd.os.includes('linux')).length;
macosCountEl.textContent = commands.filter(cmd => cmd.os.includes('macos')).length;
windowsCountEl.textContent = commands.filter(cmd => cmd.os.includes('windows')).length;
}
// Initialize the app
init();
</script>
<p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=DouglasMourray/searchable-library-of-terminal-commands" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
</html>