我们曾经通过旧服务器上的终端编辑有效负载脚本。
为了简化和避免拼写错误,我想设计一个生成有效负载的 php 脚本,将其保存到文件中,并使用 PHP 中的内置 FTP 功能将文件上传到 FTP 服务器并将脚本 chmod 到 755。
但是服务器并不特别喜欢我生成的有效负载。它不运行。
#./payload.sh
-sh: ./payload.sh: not found
#
然而,在做一个简单的之后dos2unix payload.sh
,一切都运行良好。
#dos2unix payload.sh
#./payload.sh
[OK] running payload....
#
如何自动雕刻我的文件以避免每次都需要 dos2unix?我尝试了明显的 KISS 方法:
$contents = str_replace("\r","",$contents);
$contents = trim($contents);
没运气。脚本仍然没有运行。
因此,我查看了 dos2unix.c 和 dos2unix.h,发现它似乎并不像我想象的那么简单。有 800 多行代码。
我可以在 PHP 中做更多简单的事情吗?FWIW,我不得不承认,目前我一直在我的 Mac 上使用用 Sublime Text 2 编写的手动输入文件。我确实尝试过“使用编码保存”/“UTF-8”并选择“Unix”作为“行尾”。