用 Java 分析 shell 语法是否正确的算法如下:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ShellSyntaxChecker {
// shell 命令中允许的字符
private static final String ALLOWED_CHARS = "[A-Za-z0-9_\\-./]*";
// shell 命令中禁止的字符
private static final String FORBIDDEN_CHARS = ";&