我有一个共享对象,它printf()通过init的属性执行一些操作;很简单。它只是告诉我我设置的一些变量。
当我LD_PRELOAD=mylib.so ./program.sh -flags由于program.shprintfs 吐出错误时:
./program_run: line 16: cd: mylib.so: Startup
.: File name too long
./program_run: line 18: test: too many arguments
然后程序正常启动。看起来 bash 脚本在printf()检查变量时被 s 破坏了。
有解决方法吗?