Skip to main content

ZC1001 - Variável Não Quoteada

Descrição

O check ZC1001 detecta variáveis não quoteadas que podem sofrer word splitting (divisão de palavras) quando expandidas.

O Problema: Word Splitting

# Problema: word splitting
filename="my file.txt"
rm $filename

# Expande para:
rm my file.txt # ❌ Remove dois arquivos

# Correto:
rm "$filename" # ✅ Remove um arquivo

Algoritmo

Exemplos

✅ Reporta

echo $HOME # ZC1001
rm $filename # ZC1001

❌ Ignora

echo "$HOME" # Já quoteado
echo '$HOME' # Single quote
echo $$ # Variável especial PID

Correção Automática

O ZshCheck pode corrigir automaticamente:

Antes: echo $HOME Depois: echo "$HOME"

Referência

Baseado na regra SC2086 do ShellCheck: "Double quote to prevent globbing and word splitting"