当前位置: 技术问答>linux和unix
Help,Linux bash环境有问题
来源: 互联网 发布时间:2016-02-01
本文导语: 大家好,我现在使用redhat as 4遇到一个奇怪的问题:我执行各个shell脚本的时候没有任何反应,例如我想启动apache服务 [root@gzmetro bin]# ./apachectl start [root@gzmetro bin]# 没有任何反应,如上 但是我执行如下语句是却出...
大家好,我现在使用redhat as 4遇到一个奇怪的问题:我执行各个shell脚本的时候没有任何反应,例如我想启动apache服务
[root@gzmetro bin]# ./apachectl start
[root@gzmetro bin]#
没有任何反应,如上
但是我执行如下语句是却出现了如下的情况:
[root@gzmetro bin]# sh apachectl start
+ Starting 'apache':
[root@gzmetro bin]#
但是apachectl.sh脚本中又包含调用其他的脚本,而这可能有必须在前面加sh 才能执行。
同样,你必须在执行脚本的前面加上sh 才能够执行其他的例如安装脚本./configure,否则也是没有反映。
这是什么问题呢?
希望大家帮帮忙
[root@gzmetro bin]# ./apachectl start
[root@gzmetro bin]#
没有任何反应,如上
但是我执行如下语句是却出现了如下的情况:
[root@gzmetro bin]# sh apachectl start
+ Starting 'apache':
[root@gzmetro bin]#
但是apachectl.sh脚本中又包含调用其他的脚本,而这可能有必须在前面加sh 才能执行。
同样,你必须在执行脚本的前面加上sh 才能够执行其他的例如安装脚本./configure,否则也是没有反映。
这是什么问题呢?
希望大家帮帮忙
|
mymtom@:bin$ ll /bin/bash /bin/sh
-rwxr-xr-x 1 root 785856 Jul 12 2006 /bin/bash*
lrwxrwxrwx 1 root 4 Mar 25 20:06 /bin/sh -> bash*
mymtom@:bin$ head /usr/sbin/apachectl
#!/bin/sh
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
mymtom@:bin$ uname -a
Linux fc6.unix-center.net 2.6.18-1.2798.fc6 #1 SMP Mon Oct 16 14:39:22 EDT 2006 x86_64
mymtom@:bin$
=============================
由于历史原因脚本的开头总是以#!/bin/sh开头,但是一些Linux缺省安装似乎没有/bin/sh,由于bash是兼容sh的,所以只要做一个符号链接就可以了。当然楼主也可以安装一个Bourne Shell
-rwxr-xr-x 1 root 785856 Jul 12 2006 /bin/bash*
lrwxrwxrwx 1 root 4 Mar 25 20:06 /bin/sh -> bash*
mymtom@:bin$ head /usr/sbin/apachectl
#!/bin/sh
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
mymtom@:bin$ uname -a
Linux fc6.unix-center.net 2.6.18-1.2798.fc6 #1 SMP Mon Oct 16 14:39:22 EDT 2006 x86_64
mymtom@:bin$
=============================
由于历史原因脚本的开头总是以#!/bin/sh开头,但是一些Linux缺省安装似乎没有/bin/sh,由于bash是兼容sh的,所以只要做一个符号链接就可以了。当然楼主也可以安装一个Bourne Shell