Fixing dedupe
This commit is contained in:
62
README.md
62
README.md
@@ -1,3 +1,63 @@
|
||||
# IntunePolicyParser
|
||||
|
||||
Parsing policies from Intune to Excel
|
||||
|
||||
A utility to parse **Markdown/HTML documentation exports** from the [IntuneManagement](https://github.com/...) tool into flat CSV files that can be further analyzed in Excel or Power BI.
|
||||
|
||||
## Source files
|
||||
|
||||
This parser expects as input a **Documentation export** from the IntuneManagement tool. Use the `Export Documentation (Markdown)` feature, which produces a `.md` file containing:
|
||||
|
||||
- `<h3>` sections for each policy,
|
||||
- two `<table class="table-settings">` blocks under each heading (Basics + Settings).
|
||||
|
||||
## Usage
|
||||
|
||||
```bash
|
||||
python intune.py [input_file.md] [-o OUTPUT.csv] [--dedupe] [--dedupe-scope {exact,policy,global}] [--newline {lf,crlf}]
|
||||
```
|
||||
|
||||
### Arguments
|
||||
|
||||
- `input_file.md`
|
||||
Path to the Intune documentation export (Markdown/HTML).
|
||||
Defaults to `cqre.md`.
|
||||
|
||||
- `-o, --output OUTPUT.csv`
|
||||
Output CSV file. If not provided, the name is derived from the input (e.g. `input.md -> input.csv`).
|
||||
|
||||
- `--dedupe`
|
||||
Enable removal of duplicate rows.
|
||||
|
||||
- `--dedupe-scope {exact,policy,global}`
|
||||
How duplicates are identified:
|
||||
- `exact` → full row must match (default).
|
||||
- `policy` → unique per (PolicyName + SettingKey + SettingValue).
|
||||
- `global` → unique per (SettingKey + SettingValue + Policy type + Platform).
|
||||
|
||||
- `--newline {lf,crlf}`
|
||||
Choose line endings for the output CSV:
|
||||
- `lf` (Unix/macOS/Linux, default)
|
||||
- `crlf` (Windows)
|
||||
|
||||
## Output format
|
||||
|
||||
The generated CSV contains one row per policy setting with these columns:
|
||||
|
||||
- `PolicyName`
|
||||
- `Description`
|
||||
- `SettingKey`
|
||||
- `SettingValue`
|
||||
- `Policy type`
|
||||
- `Platform supported`
|
||||
- `Created`
|
||||
- `Last modified`
|
||||
- `Scope tags`
|
||||
|
||||
## Example
|
||||
|
||||
```bash
|
||||
# Parse and dedupe by policy, exporting with LF line endings
|
||||
python intune.py CQRE.NET-2025-09-22.md -o CQRE.NET-2025-09-22.csv --dedupe --dedupe-scope policy --newline lf
|
||||
```
|
||||
|
||||
This creates `CQRE.NET-2025-09-22.csv` ready for analysis in Excel.
|
Reference in New Issue
Block a user