# SteamCMD
> Command-line Steam client for installing dedicated game servers

## Summary
Valve's command-line Steam client for downloading and updating dedicated game servers.

## Capabilities
- Download and install dedicated game servers from Steam
- Update existing game server installations
- Anonymous login for most dedicated server downloads
- Scriptable for automated server deployment
- Supports all SteamPipe-based game servers

## When to Use
- Setting up a dedicated game server
- Automating game server updates on headless Linux servers
- Deploying multiple game servers in a scripted environment

## When NOT to Use
- You want to play games (use the full Steam client)
- You need a graphical interface for server management

## Usage Patterns
### Install a game server anonymously
```
steamcmd +force_install_dir ./server +login anonymous +app_update 740 validate +quit
```
Downloads and validates Counter-Strike: Global Offensive dedicated server files to ./server

### Login and update a game server
```
steamcmd +login username +app_update 232250 +quit
```
Logs into Steam and updates Team Fortress 2 dedicated server

## Input / Output
- **stdout**: Download progress and status messages

---
Source: https://littlescripts.sh/tools/steamcmd
