Sponsored Content
Top Forums Shell Programming and Scripting How to replace string in variable? Post 303032623 by RudiC on Thursday 21st of March 2019 05:10:55 AM
Old 03-21-2019
It's a bit surprising that you refuse to learn and prefer

Code:
name2=$COL2
echo $name2 | sed "s|_| |g" - > variable
name=$(cat variable)

to
Code:
name=${COL2//_/ }

which would use shell internals only and save
- a FIFO creation
- two process creations
- two file operations


EDIT: admittedly, your latest solution name2=`echo $COL2 | sed "s|_| |g" ` is better than the above cited, but still is more resource intensive (still two processes and a FIFO) than the pure shell solution. Please be aware that the backticks method `...` is deprecated and should be replaced by $(...).

Last edited by RudiC; 03-21-2019 at 06:21 AM..
This User Gave Thanks to RudiC For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Replace string in a file w/ a variable value

I am trying to replace the default home page for several mac user accounts, I wrote a script that will hunt the files down and replace them with a pre-configured set. The problem I am having is that the download destination path for the browser is hard coded into a .plist (text config file) file... (5 Replies)
Discussion started by: tret
5 Replies

2. Shell Programming and Scripting

Replace variable length numeric string

I have a customer who logged some cc and bank account numbers in their apache logs. I got the cc numbers x'd out with sed -e 's/args=\{16\}/args=XXXXXXXXXXXXXXXX/g' -e 's/cardnum=\{16\}/cardnum=XXXXXXXXXXXXXXXX/g'but that wasn't too difficult due to the value being 16 digits. The bank account... (7 Replies)
Discussion started by: mk4mzid
7 Replies

3. Shell Programming and Scripting

Using sed to replace a string in file with a string in a variable that contains spaces

Hi, i call my shell like: my_shell "my project name" my script: #!/bin/bash -vx projectname=$1 sed s/'PROJECT_NAME ='/'PROJECT_NAME = '$projectname/ <test_config_doxy >temp cp temp test_config_doxy the following error occurres: sed s/'PROJECT_NAME ... (2 Replies)
Discussion started by: vivelafete
2 Replies

4. AIX

Replace string with asterisk(*) in variable

I was trying to replace a string ( for eg - @@asterisk@@ to * ) in variable using cat $INFILE | while read LINE do stmt1=`echo $LINE | sed 's/@@asterisk@@/\*/g'` stmt=$stmt' '$stmt1 stmt2=`echo $LINE` STATEMENT=$STATEMENT' '$stmt2 done echo 'Statement with sed -- > '... (5 Replies)
Discussion started by: Vaddadi
5 Replies

5. Shell Programming and Scripting

Find and replace string from file which contains variable and path - SH

e.g. /home/$USER/.config replace it with "" (empty) Is this possible? I think you should play a bit with sharps ## and sed:b: (2 Replies)
Discussion started by: hakermania
2 Replies

6. Shell Programming and Scripting

Replace string in file with a variable value

Hi Fellows, I am new to shell, please help we me out in this.. i have file which some lines like this.. $$param1='12-jan-2011' $$param2='14-jan-2011' $$param3='30-jan-2011' . . .....so on.. I want to change $$param3 to '31-dec-2011'. i have variable which is storing(30-jan-2011 this... (1 Reply)
Discussion started by: victor369
1 Replies

7. Shell Programming and Scripting

replace (sed?) a string in file with multiple lines (string) from variable

Can someone tell me how I can do this? e.g: a=$(echo -e wert trewt ertert ertert ertert erttert erterte rterter tertertert ert) How do i replace the STRING with $a? I try this: sed -i 's/STRING/'"$a"'/g' filename.ext but this don' t work (2 Replies)
Discussion started by: jforce
2 Replies

8. Shell Programming and Scripting

How to replace a string with a variable in a file using sed?

I have a file having some text like: PATH_ABC=/user/myLocation I have to replace "/user/myLocation" with a session variable say, $REPLACE_PATH, where $REPLACE_PATH=/user/myReplaceLocation The following sed command is not working. It is writing PATH_ABC=$REPLACE_PATH in the file ... (2 Replies)
Discussion started by: SKhan
2 Replies

9. UNIX for Dummies Questions & Answers

Replace variable string with text

Hi All, Hoping someone can help.... I am trying to work out how I can ammend a log file to remove variable strings in order to remove confidential information which I cant pass on. As an example I have used phone numbers. A large log file contains multiple lines containing something like the... (6 Replies)
Discussion started by: mutley2202
6 Replies

10. Shell Programming and Scripting

Replace substring from a string variable

Hi, Wish to remove "DR-" from the string variable (var). var="DR-SERVER1" var=`echo $var | sed -e 's/DR-//g'` echo "$var" Expected Output: However, I get the below error: Can you please suggest. (4 Replies)
Discussion started by: mohtashims
4 Replies
symlink(2)							System Calls Manual							symlink(2)

Name
       symlink - make symbolic link to a file

Syntax
       symlink(name1, name2)
       char *name1, *name2;

Description
       A  symbolic link name2 is created to name1 (name2 is the name of the file created, name1 is the string used in creating the symbolic link).
       Either name can be an arbitrary path name.  The files need not be on the same file system.

Return Values
       Upon successful completion, a zero (0) value is returned.  If an error occurs, the error code is  stored  in  errno,  and  a  -1  value	is
       returned.

Diagnostics
       The symbolic link is made, unless one or more of the following are true:

       [ENOTDIR]      A component of the name2 prefix is not a directory.

       [EEXIST]       The name2 already exists.

       [EACCES]       A component of the name2 path prefix denies search permission.

       [EROFS]	      The file name2 would reside on a read-only file system.

       [EFAULT]       The name1 or name2 points outside the process's allocated address space.

       [ELOOP]	      Too many symbolic links were encountered in translating the pathname.

       [ENAMETOOLONG] A  component of either pathname exceeded MAXNAMELEN characters, or the entire length of either pathname exceeded MAXPATHNAME
		      characters.

       [ENOENT]       The named file does not exist.

       [EIO]	      An I/O error occurred while making the directory entry for name2, or allocating the inode for name2, or writing out the link
		      contents of name2.

       [ENOSPC]       The  directory  in  which  the entry for the new symbolic link is being placed cannot be extended, because there is no space
		      left on the file system containing the directory.

       [ENOSPC]       The new symbolic link cannot be created, because there is no space left on the file system that will  contain  the  symbolic
		      link.

       [ENOSPC]       There are no free inodes on the file system on which the symbolic link is being created.

       [EDQUOT]       The  directory  in  which the entry for the new symbolic link is being placed cannot be extended because the user's quota of
		      disk blocks on the file system containing the directory has been exhausted.

       [EDQUOT]       The new symbolic link cannot be created because the user's quota of disk blocks on the file system  that	will  contain  the
		      symbolic link has been exhausted.

       [EDQUOT]       The user's quota of inodes on the file system on which the user's symbolic link is being created has been exhausted.

       [EIO]	      An I/O error occurred while making the directory entry or allocating the inode.

       [ETIMEDOUT]    A  connect  request  or remote file operation failed, because the connected party did not properly respond after a period of
		      time that is dependent on the communications protocol.

See Also
       ln(1), link(2), readlink(2), stat(2), unlink(2)

																	symlink(2)
All times are GMT -4. The time now is 03:14 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy