当我创建配置文件apache/conf/httpd.conf
并检查它是否在系统中时,程序说该文件不存在,那么我该如何重新创建该文件以使其存在?
$ echo "">>/apache/conf/httpd.conf
-bash: /apache/conf/httpd.conf: No such file or directory
实际上,我正在使用“CYGWIN”(Linux 的模拟器)做一个学校项目,在创建学校任务时我遇到了这个错误。这是我编写的整个程序:
$ if test -d apache
then
if ! test -d apache/bin
then
mkdir apache/bin
fi
if ! test -d apache/conftouch
then
mkdir apache/conf
fi
if ! test -d apache/lib
then
mkdir apache/lib
fi
if ! test -f apache/bin/httpd
then
touch apache/bin/httpd
fi
if ! test -f apache/conf/httpd.conf
then
touch apache/conf/httpd.conf
fi
mkdir apache
mkdir apache/bin
mkdir apache/conf
mkdir apache/lib
touch apache/bin/httpd
touch apache/conf/httpd.conf
fi
在我编写完程序并回去检查文件后,它说文件不存在,有人能解决这个问题来帮助我吗?
答案1
您的目录错误:apache 从未安装在 Linux 系统的根目录中。
它必须是:
echo "" >> /etc/apache2/conf/httpd.conf
为了确保
locate httpd.conf
并将目录更改为它返回的内容。请注意,我还假设您正在使用新的 Ubuntu...您可能将 apache2 作为目录,而不是 apache(1)。定位也将证实这一点。apache 很久以前就被 apache2 取代了。
您可能还需要“sudo”,这取决于您是否拥有 http.conf。
编辑:
在我编写完程序并回去检查文件后,它说文件不存在,有人能解决这个问题来帮助我吗?
请告诉我们:为什么该编辑中的所有内容在 apache 前面都没有 /,而出现错误的命令前面却有 /?
根据编辑,我认为需要
echo "" >> apache/conf/httpd.conf
答案2
>>
将输出添加到现有文件,这就是为什么操作系统在写入之前会先尝试找到此文件。这就是问题所在,如果你检查一下
/apache/conf/httpd.conf
你会注意到文件未找到,可能你只是忘记使用httpd
包管理器安装