04-16-2009
grep command to replace multiline text from httpd.conf file on Fedora
Hi,
I am a newbie to shell scripting and to Linux environment as well.
In my project I am trying to search for following text from the httpd.conf file
<Directory '/somedir/someinnerdir'>
AllowOverride All
</Directory>
and then remove this text and again rewrite the same text.
The reason to do this rewriting is that the script will be run on first installation of the web app, but it may again be run some time later as other part of this shell script is performing other tasks as well. So for first time this text wont be found and will simply be written but later again when script is run this text will be found and will need to be removed and the written again.
So the part of my script with which I am trying to achieve this is something like :
grep -ve "<Directory '/somedir/someinnerdir'>\\n
AllowOverride All\\n
</Directory>" > tmp_direct
echo -e "<Directory '/somedir/someinnerdir'>\\n
AllowOverride All\\n
</Directory>" >> tmp_direct
mv tmp_direct >> /etc/httpd/conf/httpd.conf
I dont have the code in front of me currently so there may be some syntactical errors above but the logic/coding is same.
Above code fragment is not able to do what I want to achieve as the grep command doesnt support multiline searching.
My OS is Fedora 8.
Can you please suggest something in this code to achieve what is needed or may be some other alternative.
Any help in this regard will be highly appreciated.
Thanks in advance.
10 More Discussions You Might Find Interesting
1. IP Networking
I have found in the httpd.conf where it it states the default parse pages like index.htm, index.html, index.php and etc....However, my computer box does not seem to want to automatically load the index.php files. Anyone have any ideas? (5 Replies)
Discussion started by: macdonto
5 Replies
2. IP Networking
Have been asked to remove all images from being logged to the access_log ... where am I going wrong?<VirtualHost 123.456.789.99>
ServerName www.somedomain.com.au
DocumentRoot /agents/tts
Redirect /wap http://somewap.com.au/traveler
LogFormat "%v %h %l %u %t \"%r\" %>s %b" comonvhost... (2 Replies)
Discussion started by: Cameron
2 Replies
3. Red Hat
Hi, I was wondering if someone could help me out here. I am super-paranoid, so am trying to limit what PHP files can be executed on this server. I have a small list of files that I want to allow. The rest, deny. So I have base rule that denies all php files server-wide: order allow,deny ... (0 Replies)
Discussion started by: Lobster
0 Replies
4. Red Hat
Hi, I was wondering if someone could help me out here. I am super-paranoid, so am trying to limit what PHP files can be executed on this server. I have a small list of files that I want to allow. The rest, deny:
<Files ~ "\.(php|php3)$">
order allow,deny
deny from all
</Files>
I... (0 Replies)
Discussion started by: Lobster
0 Replies
5. Shell Programming and Scripting
Hi there
I just wondered if someone could give me some perl advice
I have a bunch of text files used for a wiki that have common headings such as
---++ Title
blah
---++ Summary
blah
---++ Details
Here is the multiline
block
of text I
wish
to (6 Replies)
Discussion started by: rethink
6 Replies
6. Shell Programming and Scripting
Hello Guys !!
wanted to use SED to pull cout the full vertualhost entry for domain which is specified from command line
Like (IP base httpd.conf)
domain="ServerName takemewithyou.in"
sed -n '/<VirtualHost* $domain/,/<\/VirtualHost>/p' httpd.conf
File can take to test is below
... (0 Replies)
Discussion started by: SilvesterJ
0 Replies
7. Shell Programming and Scripting
Hi all
I have data files which contain data as shown below:
Line 5: FIDE
INST_DESC: DIAM Co Ltd/Japan => MAID Co Ltd/Japan
INST_NME: DIAM Co Ltd/Japan => MAID Co Ltd/Japan
Line 6: FIDE
INST_DESC: DIAM DL/Pimco US Bond Open Born in the USA => MAID DL/Pimco US Bond Open Born in the... (6 Replies)
Discussion started by: Ganesh_more
6 Replies
8. Shell Programming and Scripting
I want to search for a block of text in httpd.conf that between two strings and comment it. There are multiple blocks with "<Directory.. and </Directory>"
<Directory "${ORACLE_INSTANCE}/config/${COMPONENT_TYPE}/${COMPONENT_NAME}/htdocs">
#
# Possible values for the Options directive are... (3 Replies)
Discussion started by: kchinnam
3 Replies
9. Red Hat
hi
is it possible ?
explain tome about below items
StartServers 8
MinSpareServers 10
MaxSpareServers 20
ServerLimit 4000
MaxClients 4000
MaxRequestsPerChild 4000
this is my servers 8gig ram & cpu 12 core...
what cann i putting in order this ?
tnx (1 Reply)
Discussion started by: mnnn
1 Replies
10. Shell Programming and Scripting
I have a file conatining the below:
---
10.9.16.116:
/tmp/5835113081224811756.jar:
hash: e6df90d38fa86f0e289f73d79cd2cfd2a29954eb
/tmp/4603745991442278706.jar:
hash: e6df90d38fa86f0e289f73d79cd2cfd2a29954eb
10.9.14.126:
/tmp/conf/extra/httpd-ssl.conf:
hash:... (1 Reply)
Discussion started by: mohtashims
1 Replies
LEARN ABOUT SUSE
apachectl2
APACHECTL(8) apachectl APACHECTL(8)
NAME
apachectl - Apache HTTP Server Control Interface
SYNOPSIS
When acting in pass-through mode, apachectl can take all the arguments available for the httpd binary.
apachectl [ httpd-argument ]
When acting in SysV init mode, apachectl takes simple, one-word commands, defined below.
apachectl command
SUMMARY
apachectl is a front end to the Apache HyperText Transfer Protocol (HTTP) server. It is designed to help the administrator control the
functioning of the Apache httpd daemon.
The apachectl script can operate in two modes. First, it can act as a simple front-end to the httpd command that simply sets any necessary
environment variables and then invokes httpd, passing through any command line arguments. Second, apachectl can act as a SysV init script,
taking simple one-word arguments like start, restart, and stop, and translating them into appropriate signals to httpd.
If your Apache installation uses non-standard paths, you will need to edit the apachectl script to set the appropriate paths to the httpd
binary. You can also specify any necessary httpd command line arguments. See the comments in the script for details.
The apachectl script returns a 0 exit value on success, and >0 if an error occurs. For more details, view the comments in the script.
OPTIONS
Only the SysV init-style options are defined here. Other arguments are defined on the httpd manual page.
start Start the Apache httpd daemon. Gives an error if it is already running. This is equivalent to apachectl -k start.
stop Stops the Apache httpd daemon. This is equivalent to apachectl -k stop.
restart
Restarts the Apache httpd daemon. If the daemon is not running, it is started. This command automatically checks the configuration
files as in configtest before initiating the restart to make sure the daemon doesn't die. This is equivalent to apachectl -k
restart.
fullstatus
Displays a full status report from mod_status. For this to work, you need to have mod_status enabled on your server and a text-based
browser such as lynx available on your system. The URL used to access the status report can be set by editing the STATUSURL variable
in the script.
status Displays a brief status report. Similar to the fullstatus option, except that the list of requests currently being served is omit-
ted.
graceful
Gracefully restarts the Apache httpd daemon. If the daemon is not running, it is started. This differs from a normal restart in that
currently open connections are not aborted. A side effect is that old log files will not be closed immediately. This means that if
used in a log rotation script, a substantial delay may be necessary to ensure that the old log files are closed before processing
them. This command automatically checks the configuration files as in configtest before initiating the restart to make sure Apache
doesn't die. This is equivalent to apachectl -k graceful.
graceful-stop
Gracefully stops the Apache httpd daemon. This differs from a normal stop in that currently open connections are not aborted. A side
effect is that old log files will not be closed immediately. This is equivalent to apachectl -k graceful-stop.
configtest
Run a configuration file syntax test. It parses the configuration files and either reports Syntax Ok or detailed information about
the particular syntax error. This is equivalent to apachectl -t.
The following option was available in earlier versions but has been removed.
startssl
To start httpd with SSL support, you should edit your configuration file to include the relevant directives and then use the normal
apachectl start.
Apache HTTP Server 2005-09-20 APACHECTL(8)