关于执行命令行命令的代码的注意事项

本文介绍了在使用命令行时路径中包含空格所导致的问题,并通过一个PHP代码示例进行说明。强调在编程中要避免路径中出现空格,同时要注意不同操作系统下路径符号的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一定不要在命令行命令的字符串中出现空格,其实以前在玩python的时候就发现中间有空格不好使了,举个例子:

$htpassword_cmd="C://Program Files//Apache Group//Apache2//bin//htpasswd";
$svn_passwd_file="C://Repository Server//passwd//passwd";
exec("$htpassword_cmd -cmb $svn_passwd_file $name /"$password/"",$ar,$status);
echo $status;
echo $ar[1];

以上是一段php代码,其中的路径包含了空格,这样在执行的时候exec函数的返回值status为1,这里简单介绍一下,status的返回值为0的时候exec执行的命令行命令表示已经执行了,并返回了ar,就是提示信息.

在实际中执行这段命令,cmd(命令行命令)提示的信息应该是"c:/program 不是什么什么程序或批处理命令",总之在编程中涉及到路径的问题是一定要注意两点:

1。反斜杠和斜杠的问题,注意操作系统,使win、unix还是dos,其中有一个专义符的问题。

2。在路径中最好不要有奇怪的文字(中文),还有空格。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值