Remove first portion of string


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Remove first portion of string
# 1  
Old 08-10-2011
Remove first portion of string

I have a script which currently uses a file containing a list of directories as an argument. The file is read in to an array, and then the array is iterated in a for loop.
What I would like to do is cut off the first few directories of the directory path (they won't exist on the server where the items are being copied).

Here is an example:
On local server:
/usr/local/logs/serverlogdir

On remote server:
/logs/serverlogdir <- note that the /usr/local is removed


Is there any easy way to do this?
# 2  
Old 08-10-2011
See if this works for you:
Code:
echo /usr/local/logs/serverlogdir | sed 's#.*\(/.*/\)#\1#'

This User Gave Thanks to Shell_Life For This Post:
# 3  
Old 08-10-2011
Quote:
Originally Posted by Shell_Life
See if this works for you:
Code:
echo /usr/local/logs/serverlogdir | sed 's#.*\(/.*/\)#\1#'

Haha, you know, immediately after posting it I remembered that sed exists. Its been a many-cup-of-coffee type of morning. Thanks for answering! I know it'll work Smilie
# 4  
Old 08-10-2011
Or if your array is called A, you could try this:
Code:
for i in "${A[@]#/usr/local}"
do
  echo "$i"
done

# 5  
Old 08-10-2011
Code:
 
echo "/usr/local/logs/serverlogdir" | sed 's!.*\/local!!'
echo "/usr/local/logs/serverlogdir" | awk -F"/" '{ $1=$2=$3=""; }1' OFS="/"

Althoguh awk produces excess "/" infront of the output , it should not cause any issue to functionality.
# 6  
Old 08-10-2011
Here is another way to do this in ksh:

Code:
var="/usr/local/logs/serverlogdir"; echo ${var#/*[a-z]/*[a-z]/}

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Get portion of string from the end

Hi all, Can anyone suggest a way to get a portion of string from the end? So: $ORACLE_SID=blt10cr1 We can drop the final '1' and end up with: $ORACLE_SID=blt10cr So far I have the following: echo $ORACLE_SID | cut -c1-5 and echo $ORACLE_SID | cut -c1-6 | rev any ideas? (4 Replies)
Discussion started by: jonnyd
4 Replies

2. Shell Programming and Scripting

remove large portion of web page code between two tags

Hi everybody, I am trying to remove bunch of lines from web pages between two tags: one is <h1> and the other is <table it looks like <h1>Anniversary cards roses</h1> many lines here <table summary="Free anniversary greeting cards." cellspacing="8" cellpadding="8" width="70%">my goal... (5 Replies)
Discussion started by: georgi58
5 Replies

3. Shell Programming and Scripting

How to extract portion of a string?

Hi Gurus, Would like to seek some help on how to extract a portion of string from log's output as shown below. Sample of raw data: piece handle=/test123/disk_dump/test123/df0_cntrl_PCPFCI20120404_68498 tag=TAG20120404T180035 comment=NONE piece... (13 Replies)
Discussion started by: superHonda123
13 Replies

4. UNIX for Dummies Questions & Answers

Remove the date portion from file name

hi, I am trying to remove the last field before the period (.) from a list of file names in a directory in a shell script. Below is the list of file names. ENVID_archival_20120214092258.log ENVID_Get_Source_Files_20120214091828.log ENVID_Get_Source_Files_20120214092523.log... (6 Replies)
Discussion started by: Vijay81
6 Replies

5. Shell Programming and Scripting

Extracting a portion of the string and comparing

I have 2 text files say file1.txt and file2.txt . Some of the sample records for file1.txt were shown below: XXXXX12345XXXXXXX12 3456789YYYYY XXXXXXXXXX12345XX123457485YYYYY XX12345XXXXXXXXXX123454658YYYYY for file2.txt, some of the sample records were shown below: ... (5 Replies)
Discussion started by: bobby1015
5 Replies

6. Shell Programming and Scripting

Help on extracting portion of string

Hi Gurus, I've some sample of my log information as shown below. -> Processing ABCD123456 This is tp version 372.04.57 (release 700, unicode enabled) This is R3trans version 6.14 (release 700 - 05.03.09 - 08:28:00). unicode enabled version R3trans finished (0000). Warning: Parameter... (1 Reply)
Discussion started by: superHonda123
1 Replies

7. Shell Programming and Scripting

extract string portion using sed

Hi All I have 3 files as listed below and highlighted in bold the portions of the filenames I need to extract: TOS_TABIN218_20090323.200903231830 TOS_TABIN219_1_20090323.200903231830 TOS_TABIN219_2_20090323.200903231830 I tried source_tabin_name=`echo $fname | sed 's/_.*//'` but I... (6 Replies)
Discussion started by: santam
6 Replies

8. UNIX for Dummies Questions & Answers

Stripping a portion of string from behind!!!

Hi, How to strip a portion of a file name from behind...Say for Eg..i have a file name like aaaaa.bbbbb.Mar-17-2007 i want to remove .Mar-17-2007...is there a one line command which can give this output... Thanks Kumar (5 Replies)
Discussion started by: kumarsaravana_s
5 Replies

9. Shell Programming and Scripting

remove portion of file

Can anyone tell me how to remove a portion of a large file to smaller ones? What I have is a large file that was created becasue several similar files were joined together. Each individual file starts with MSG_HEAD. I want to take everything from MSG_HEAD up to were it says MSG_HEAD again and... (13 Replies)
Discussion started by: methos
13 Replies

10. UNIX for Dummies Questions & Answers

How to extract a portion of a string from the whole string

How to extract a portion of a string from a full string using unix. For example: Say source string is = "req92374923.log" I want only the numeric portion of the string say "92374923" how to do that in Unix. (2 Replies)
Discussion started by: ds_sastry
2 Replies
Login or Register to Ask a Question