1、将命令写在文件中
数据量比较大的话,建议用程序去生成文件。例如:
List<String> planIdList = planDao.findAll().parallelStream().map(PlanModel::getId).map(String::valueOf).collect(Collectors.toList());
BufferedWriter br = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("/Users/chengjiansheng/Desktop/command.txt")));
for (String planId : planIdList) {
br.write("SADD PLAN_UNSYNC_S " + planId + "\r\n");
}
br.flush();
br.close();
生成的文件可能是这样的:
接下来,命令行执行
cat command.txt | redis-cli -h 127.0.0.1 -p -a --pipe
这个例子比较简单,可以这么做,如果命令比较多的话可以写成shell脚本
2、grep命令
grep "NullPointerException" access.log | wc -l
grep "com\.cjs\.babyplan\.controller\.QuestionController.*118795924" access.--.log