php-config: /bin/sh^M: 坏的解释器: 没有那个文件或目录

因为一些项目需要安装一些PHP扩展,在执行./configure时提示

php-config: /bin/sh^M: 坏的解释器: 没有那个文件或目录

最开始以为这个文件被修改了,最终和测试服务器上的php-config进行对比发现内容都一样,但是执行php-config返回的结果却不一样,最后执行cat命令查看才发现问题在哪儿

cat -A php-config

下面为有问题的文件内容截图,注意每行内容结尾多了个(^M)

090403_IiBd_238834.png

原来这跟wdcp有关,通过wdcp的文件管理器打开该文件编辑过后,每一行的结尾都会多出来一个字符\r,变成了\n\r,而在linux下文件的结尾是\n,那么在linux下打开看的时候每一行的结尾就会多出来一个字符\r,使用cat -A查看内容时\r会显示为^M

解决办法

下面为执行命令(把以\r结束的字符换成空白)

sed -i 's/\r$//' php-config

参数说明

-i   插入
s     替代模式
\r$   表示任何以\r结束的字符

特别说明

在Windows下编辑过的文件结尾一样也是\n\r,所以上传Linux服务器后一样需要进行替换,所以不建议在Windows下面和wdcp的文件管理器对系统文件进行编辑,避免因为一些原因引起异常,造成损失那可就不好了

转载于:https://my.oschina.net/kangweb/blog/1801967

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值