#!/bin/sh
searchkey=$1
shift
sep=$1
shift
replaceval=$1
shift
sed '
# look for the searchkey
/^'"$searchkey$sep"'/ {
# replace the value
s#'"$sep"'.*#'"$sep$replaceval"'#
# copy the rest of the file
:L
n
bL
}
# not found? Append a line
$a\
'"$searchkey$sep$replaceval"'
' "$@"
If config.new looks good then copy it back to config.
The script looks for the key, if it matches then it changes the value.
If it does not find the key then it appends a line.
If you have GNU sed then you can add a -i.bak option to sed in the script. Then sed will modify the original file and leave a .bak file. (And you don't need to redirect the output.)
Hi,
I want to add two new lines to a file.
I have:
dn: uid=beele,ou=medewerker,dc=hva,dc=nl
street: Wibautstraat 2-4
dn: uid=beelx,ou=medewerker,dc=hva,dc=nl
street: Wibautstraat 2-4
I want to make:
dn: uid=beele,ou=medewerker,dc=hva,dc=nl
changetype: modify
replace: street
street:... (3 Replies)
Aloha! I have just over 1k of users that have permissions that they shouldn't under our system. I need to parse a provided list of usernames, check their permissions file, and strip the permissions that they are not allowed to have. If upon the permissions strip they are left with no permissions,... (6 Replies)
Hi there, am trying to parse an Apache 'server' config file. A snippet of the config file is shown below:
.....
ProxyPassReverse /foo http://foo.example.com/bar
.....
.....
RewriteRule ^/(.*) http://www.example.com/$1
RewriteRule /redirect https://www.example1.com/$1
........ (7 Replies)
Hi,
I want to use a config file as the base file and parse over the values of country and city parameters in the config file and generate separate config files as explained below.
I will be using the config file as mentioned below:
(config.txt)
country:a,b
city:1,2
type:b1... (1 Reply)
Hi
In my sed version the interactive method of adding a new works :
> sed '3a\
new line ' file_name
But i want to do the same task in one command as it is a part of a script.
i hav tried the following but no luck so far
cat file_name |sed -e '3a\ new line '
cat file_name |sed -e... (4 Replies)
Hi I am new to shell scripting. There is a requirement to write a shell script to meet follwing needs.Prompt reply shall be highly appreciated.
script that will compare two config files and produce 2 outputs - actual config file and a report indicating changes made.
OS :Susi linux ver 10.3.
... (4 Replies)
I've been playing with sed, trying to get it to insert the contents of somefile.txt after line 13 on anotherfile.txt. I tried searching for a line with regex and attempting to insert something on the next line with:
find ./anotherfile.txt -type f -exec sed -i -e '/^dog/cat/' {} \;
but it... (2 Replies)
Hello.
I want comment or uncomment a ligne in a config file.
The file name : /etc/samba/smb.conf
Normaly the ligne is uncomment :so the line begin with a tab character
followed by passdb backend =\tpassdb backend =
In that case I should comment this line ... (2 Replies)
Hello,
I'm trying to figure out how to speed up the following as I want to use multiple commands to search thousands of files.
is there a way to speed things up?
Example I want to search a bunch of files for a specific line, if this line already exists do nothing, if it doesn't exist add it... (4 Replies)
Hi,
I am trying to add a line to a file using sed.
tmp1:
aaaa
Hello
bbbb
Hello
I need to add "testing" after the first match of Hello. So the output should be
aaaa
Hello
testing
bbbb
Hello
and the line to be added will be a variable (2 Replies)
Discussion started by: giri_luck
2 Replies
LEARN ABOUT DEBIAN
ch_lab
CH_LAB(1) BSD General Commands Manual CH_LAB(1)NAME
ch_lab -- change/copy label files
SYNOPSIS
ch_lab [-S frame spacing] [-start time] [-end time] [-ext file extension] [-extract file] [-extend time] [-f sample frequency]
[-lf sample frequency] [-itype file type] [-key key file] [-lablist list of labels] [-length time] [-map map file]
[-name feature name] [-class class] [-o output file] [-otype file type] [-pad high | low] [-pos list of labels] [-q timestep]
[-range range] [-sed sed file] [fl shift time delta] [-style output stype] [-vocab vocab file] [-verify] [-nopath] [-base] [-combine]
[-divide] [-h] input files ...
DESCRIPTION
ch_lab copies from one or more input label files to an output label file, optionally performing various operations along the way.
The following option flags are recognized:
-h Print a summary of usage to standard output.
-S frame spacing
frame spacing of output
-start time
start time, in seconds, for label extraction
-end time
end time, in seconds, for label extraction
-ext file extension
filename extension to use for multiple output files
-extract file
extract a single file from a list of files
-extend time
extend track file by time seconds beyond label file
-f sample frequency
sample frequency of label file
-lf sample frequency
sample frequency for labels
-itype file type
type of input label file: esps htk ogi
-key key file
key label file
-lablist list
list of labels to be considered as blank
-length time
length of track produced, in seconds
-map map file
label mapping file
-name feature name
eg. Fo Phoneme
-class class
name of class defined in op file
-o output file
output file name
-otype file type
output file type: xmg, ascii, esps, htk
-pad high | low
pad with high or low values
-pos list
list of labels to be regarded as 'pos'
-q timestep
quantize label timings to nearst value
-range range
difference between high and low values
-sed sed file
perform regex editing using sed file
fl shift time delta
shift the times of the labels
-style output style
output style e.g. track
-vocab file
file containing list of words in vocabulary
-verify
check that only labels in vocab file are in label file
-nopath
ignore pathnames when searching label lists
-base
use base filenames for lists of label files
-combine
-divide
SEE ALSO ch_wave(1)ch_track(1)Edinburgh Speech Tools April 5, 2001 Edinburgh Speech Tools