04-10-2013
How to replace all ip addresses in all files in directory in ksh?
Hi All,
I have a directory containing a lot of files and I want to search all files which contains IP addresses pattern and want to replace those ip addresses with equal number of, say, some character, 'x'. So after replacement the file should not contain any IP address. Like
10.122.53.5 -> xx.xxx.xx.x
12.176.254.24 -> xx.xxx.xxx.xx
the replacement should not change anything other than those IP address numbers, retaining all white spaces, newlines etc. intact.
for fname in $(find "$DIR" -type f -print)
do
#for each file replace the IP numbers here in the file
done
How can I achieve this using commands like grep/sed/awk/tr or may be combining use of all these commands?
Please do care about the different shells working behavior like something may work in bash, but may not work in korn shell. I am using ksh for this.
Thanks in advance for the replies.
sanzee
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I need to get the latest file from a list of files in a particular directory.
Please could anyone help me out to get the file.
Thank you,
- Jay. (1 Reply)
Discussion started by: Jayathirtha
1 Replies
2. Shell Programming and Scripting
Hello all
I need to search and replace in multiple files that are in directory hierarchy
Im using the :
find . -name "*.dsp" -print | xargs grep -n -o Test.lib" , I like to be able to replace every instance of Test.lib
with empty space .
how can I write one liner that does this ? (3 Replies)
Discussion started by: umen
3 Replies
3. Shell Programming and Scripting
Hi,
I have a directory has DIR1 and the D1 directory has 200+ files.
I want change the string from "Bangalore" to "Bangaluru" in all files in the D1 directory.
Thanks (2 Replies)
Discussion started by: koti_rama
2 Replies
4. Shell Programming and Scripting
I was google searching and found
Perl as a command line utility tool
This almost solves my problem:
find . | xargs perl -p -i.old -e 's/oldstring/newstring/g'
I think this would create a new file for every file in my directory tree. Most of my files will not contain oldstring and I... (1 Reply)
Discussion started by: siegfried
1 Replies
5. Shell Programming and Scripting
Hello Friends,
I've been trying to write a script which finds a string and change it with another string. For this i want to search all files (with its arguments) under a spesific directory and its subdirectories.
For example lets assume i want to replace an IP= 192.168.0.4 with another... (4 Replies)
Discussion started by: EAGL€
4 Replies
6. Shell Programming and Scripting
I have a directory /java/unix/data
In data directory i have so many files from which i want to find some files who look alike below.(there are number of such below such files as well different files too in the data directory)
-68395#svg.xml
-56789#ghi.xml
-67894#gjk.org
-56734#gil.txt
I... (6 Replies)
Discussion started by: pratima.kumari
6 Replies
7. Shell Programming and Scripting
I would like to get help to find how to replace word in files from command line instead of to vi to each file.
This is the command i am running now.
grep <old word> *
vi (file with the word found in it)
1,$s/<old word>/<new word>/g
It would very helpful if I can combine these in one... (2 Replies)
Discussion started by: ywu081006
2 Replies
8. Shell Programming and Scripting
I need to update about 2400 files in a directory subtree, with a new directory path inside the files
I need to change this occurence in all files: /d2/R12AB/VIS/apps/tech_st/10.1.2
with this: /u01/PROD/apps/apps_st/10.1.3
I know how to change single words using "find . -type f -print0 |... (6 Replies)
Discussion started by: wicus
6 Replies
9. Shell Programming and Scripting
I wish to traverse all files and folders under a given directory say "/tmp/configuration" and for all ip address mentioned therein.
I tried find ./ -type f | xargs grep "*.*.*.*" but it does not populated the correct results.
Can you please suggest. (1 Reply)
Discussion started by: mohtashims
1 Replies
10. UNIX for Beginners Questions & Answers
I'm trying to wirte ksh script for given requirement, but i unable to achive it.
In dir1 directory I need to check for the files which suffixed with .csv or .txt, If there is no files, then i need to exit. If any files found I need to move the each file found to dir2 directory. I have to repeat... (4 Replies)
Discussion started by: Kayal
4 Replies
ALI(1) [nmh-1.5] ALI(1)
NAME
ali - list mail aliases
SYNOPSIS
ali [-alias aliasfile] [-list | -nolist] [-normalize | -nonormalize] [-user | -nouser] [-version] [-help] [aliases ...]
DESCRIPTION
Ali searches the named mail alias files for each of the given aliases. It creates a list of addresses for those aliases, and writes that
list on standard output. If no arguments are given, ali outputs all alias entries.
By default, when an aliases expands to multiple addresses, the addresses are separated by commas and printed on as few lines as possible.
If the -list option is specified, then when an address expands to multiple addresses, each address will appear on a separate line.
The switch -user directs ali to perform its processing in an inverted fashion: instead of listing the addresses that each given alias
expands to, ali will list the aliases that expand to each given address. If the -normalize switch is given, ali will try to track down the
official hostname of the address.
The files specified by the profile entry "Aliasfile" and any additional alias files given by the -alias aliasfile switch will be read.
Each alias is processed as described in mh-alias(5).
FILES
$HOME/.mh_profile The user profile
/etc/passwd List of users
/etc/group List of groups
PROFILE COMPONENTS
Path: To determine the user's nmh directory
Aliasfile: For a default alias file
SEE ALSO
mh-alias(5)
DEFAULTS
`aliasfiles' defaults to /etc/nmh/MailAliases
`-nolist'
`-nonormalize'
`-nouser'
CONTEXT
None
BUGS
The -user option with -nonormalize is not entirely accurate, as it does not replace local nicknames for hosts with their official site
names.
MH.6.8 11 June 2012 ALI(1)