(command string)
| 262 | } |
| 263 | |
| 264 | func ExtractBaseCommand(command string) string { |
| 265 | cleaned := StripAllSafeEnvPrefixes(strings.TrimSpace(command)) |
| 266 | if cleaned == "" { |
| 267 | return "" |
| 268 | } |
| 269 | tokens := Tokenize(cleaned, false) |
| 270 | if len(tokens) == 0 { |
| 271 | return "" |
| 272 | } |
| 273 | base := tokens[0] |
| 274 | if base == "sudo" || base == "doas" || base == "pkexec" { |
| 275 | if len(tokens) == 1 { |
| 276 | return "" |
| 277 | } |
| 278 | base = tokens[1] |
| 279 | } |
| 280 | return NormalizeBaseToken(base) |
| 281 | } |