最近做一个可执行shell调度的需求,要求用户输入shell,然后后台定时调度运行.实现大致为:保存用户的输入,设定时间,crontab定时执行用户的输入.但这里涉及到一个安全问题,如何确定用户的输入是安全的? 最初的想法是过滤危险命令,比如rm -rf /之类的.后来,索性把用户的命令丢到一个特殊文件内,以一个权限很小的用户去执行用户命令就好了. 于是写好的脚本大致如下 sudo runuser -l etl_shell -m -c " function make_dir(){ local d