核心用法
Survey 是一款面向命令行用户的轻量级问卷调查工具,采用纯 Bash 脚本实现,无需任何外部依赖即可运行。用户通过简单的命令行指令完成问卷创建、数据收集与分析导出全流程。主要命令包括 survey run 启动交互式问卷、survey add <item> 添加问题条目、survey export <fmt> 以 JSON/CSV/TXT 格式导出结果。所有数据默认存储于本地 ~/.local/share/survey/ 目录,可通过设置 SURVEY_DIR 环境变量自定义存储位置。
显著优点
1. 零依赖部署:纯 Bash 实现,无需 Python、Node.js 等运行时环境,兼容绝大多数 Unix/Linux 系统,开箱即用。
2. 隐私优先设计:所有数据本地存储,零网络通信,从根本上杜绝数据外泄风险,符合 GDPR 数据最小化原则。
3. 极简工作流:命令行交互简洁直观,适合技术用户快速搭建调研场景,导出格式覆盖常见数据分析需求。
4. 资源占用极低:无后台服务,执行完毕即释放资源,适合在服务器或资源受限环境中运行。
潜在缺点与局限性
1. 功能边界有限:仅支持基础单选、文本输入等简单题型,无逻辑跳转、分支判断、多媒体嵌入等高级功能,不适合复杂调研场景。
2. 无协作与同步:纯本地存储导致多设备数据无法同步,团队协作需手动合并导出文件。
3. UI 体验朴素:命令行界面对于非技术终端用户存在学习门槛,无法与专业问卷平台(如 SurveyMonkey、金数据)的图形化体验相比。
4. 数据规模受限:本地文件存储在超大规模数据(数万条回复)时可能面临性能瓶颈,缺乏数据库级查询优化。
适合的目标群体
- 开发者与技术运维:需要快速在服务器或 CI/CD 流程中嵌入简易反馈收集
- 隐私敏感型用户:拒绝将调研数据托管至第三方云服务的个人或组织
- 离线场景需求:网络受限环境(如内网、IoT 设备)中的临时调研
- 教育实验用途:学习 Shell 脚本与数据处理的教学示例
常规使用风险
1. 数据持久化风险:本地存储依赖文件系统权限,若目录权限配置不当可能导致数据被其他用户读取;建议定期检查 ~/.local/share/survey/ 权限设置。
2. 来源可信度:开发者为个人维护者(T3 级别),虽经代码审计无恶意行为,但长期维护能力与更新频率存在不确定性,建议关注 GitHub 仓库动态。
3. 导出文件安全:导出的 JSON/CSV/TXT 文件默认无加密,若包含敏感信息需注意存储位置与访问控制,避免误提交至代码仓库或共享目录。
4. 无版本回滚:缺乏内置数据备份机制,误操作删除或覆盖后难以恢复,重要数据建议定期手动备份。