Sponsored Content
Top Forums Shell Programming and Scripting How to handle variable with special character? Post 303026285 by Corona688 on Friday 23rd of November 2018 10:42:34 AM
Old 11-23-2018
I think I finally get it -- that grep is supposed to find the line in the file you want. What for, I'm not certain, as you don't use the file for anything, yet. So I'm also wild-guessing that the 'dir' part of the file ends up being part of the destination file name.

Please try this code and see if it does anything like what you want. It won't actually move any files, just print 'mv inputfile outputfile'.
Code:
#!/bin/ksh

# We use a function, so overwriting $1 $2 ... won't affect anything outside
function checkfile {
        dir="$1"
        set -- "${2}"* # Match one or more files, placing in local $1 $2 ...
        if [ ! -f "${1}" ]
        then
                echo "${1} not found" >&2
                return 1
        fi

        echo mv "${1}" "${1}_${dir}"
}

while IFS=", " read dir filename # Split input upon spaces and commas
do
        # Skip lines where filename doesn't match the argument given.
        [ "$1" = "$filename" ] || continue
        # call checkfile.  Inside checkfile, $1=$dir and $2=$filename
        checkfile "$dir" "$filename"
done<masterfile


Last edited by Corona688; 11-23-2018 at 11:49 AM..
 

10 More Discussions You Might Find Interesting

1. Programming

special character ?

hey there im a bit stuck on executing commands that include the special character '?'. can someone recommend a way on how i would be able to execute it?? i thought the glob function could be useful (still mite be) but upon entering the command 'ls pars?' it listed all the files in the... (1 Reply)
Discussion started by: mile1982
1 Replies

2. Shell Programming and Scripting

How ro handle backslash character in grep?

Hi , I am doing invert grep using -v but the string contain "/" which break the grep command and it do not skip the lines with "/" on it. Diffu.txt ======== 1159c1159 < <td align="right" valign="middle" class="paddingRight2px" id="featureListItemChannelButton7466"> --- > <td... (1 Reply)
Discussion started by: rajbal
1 Replies

3. Shell Programming and Scripting

special character

Hi, I am trying to unload file from a database. Which contains few lines with the character below. Rest of the data was unloaded appropriately. a) What does this below character means? b) How can i remove it, I already have sed '/^$/d' c) Will this effect the file by any means... (4 Replies)
Discussion started by: tostay2003
4 Replies

4. Shell Programming and Scripting

Special character \

Hi, In the shell script, i need to remove the special charater "\" with "\\". For example, i need to replace "D:\FXT\ABC.TXT" with "D:\\FXT\\ABC.TXT". However, when trying to do something like , i get the below error :- -->echo "D:\FXT\ABC.TXT" | sed -e 's#\#\\#g' sed: 0602-404 Function... (7 Replies)
Discussion started by: amit_arora
7 Replies

5. Shell Programming and Scripting

Deleteing one character after an special character

I have below line in a unix file, I want to delete one character after "Â". 20091020.Non-Agency CMO Daily Trade Recap Â~V Hybrids The result should be : 20091020.Non-Agency CMO Daily Trade Recap  Hybrids i dont want to use "~V" anywhere in the sed command or any other command, just remove... (1 Reply)
Discussion started by: mohsin.quazi
1 Replies

6. Shell Programming and Scripting

How to handle variable with spaces in ksh

I'm having issue capturing a value from file.list with a multiple spaces in a variable $i, tried various options like using double quotes, no quotes, single quotes, curly braces but to no avail. cat file.list aaa test bbb ccc test ddd eee test fff for i in `cat file.list` do echo "$i";... (2 Replies)
Discussion started by: mbak
2 Replies

7. Shell Programming and Scripting

How to substitute variable in sed for special character?

Hi , I have input file like below Hi this is "vinoth". Hi happy to work with 'unix' USA(united states of America) My script variables are below : Dquote=Ộ Squote=&#$567 Obrac=&^986 Cbrac=&^745 I want to read the variables in my SED command to replace the double quote,single... (9 Replies)
Discussion started by: vinothsekark
9 Replies

8. Shell Programming and Scripting

Vi special character

When editing a file, vi displays a special character as ^L. Can you tell me the escaped character to be used in awk? And can that escaped character be used in a regexp in both sed and awk? (7 Replies)
Discussion started by: dmesserly
7 Replies

9. Shell Programming and Scripting

Handle special characters in awk -F

Hello Folks, Need to bisect strings based on a subset. Below works good. echo /a/b/c/d | awk -F"/c/d$" '{print $1}' /a/b However, it goes awry with special characters. echo /a/b/c+/d | awk -F"/c+/d$" '{print $1}' /a/b/c+/d Desired output: /a/b Escaping the special characters... (11 Replies)
Discussion started by: vibhor_agarwali
11 Replies

10. UNIX for Beginners Questions & Answers

Special character $$

Hi, on ksh What does the following do? grep -v "toolbox" $home_oracle/.profile >$home_oracle/.profile.$$ Thanks. Please use CODE tags as required by forum rules! (3 Replies)
Discussion started by: big123456
3 Replies
DH_INSTALL(1)							     Debhelper							     DH_INSTALL(1)

NAME
dh_install - install files into package build directories SYNOPSIS
dh_install [-Xitem] [--autodest] [--sourcedir=dir] [debhelperoptions] [file|dir...destdir] DESCRIPTION
dh_install is a debhelper program that handles installing files into package build directories. There are many dh_install* commands that handle installing specific types of files such as documentation, examples, man pages, and so on, and they should be used when possible as they often have extra intelligence for those particular tasks. dh_install, then, is useful for installing everything else, for which no particular intelligence is needed. It is a replacement for the old dh_movefiles command. This program may be used in one of two ways. If you just have a file or two that the upstream Makefile does not install for you, you can run dh_install on them to move them into place. On the other hand, maybe you have a large package that builds multiple binary packages. You can use the upstream Makefile to install it all into debian/tmp, and then use dh_install to copy directories and files from there into the proper package build directories. From debhelper compatibility level 7 on, dh_install will fall back to looking in debian/tmp for files, if it doesn't find them in the current directory (or whereever you've told it to look using --sourcedir). FILES
debian/package.install List the files to install into each package and the directory they should be installed to. The format is a set of lines, where each line lists a file or files to install, and at the end of the line tells the directory it should be installed in. The name of the files (or directories) to install should be given relative to the current directory, while the installation directory is given relative to the package build directory. You may use wildcards in the names of the files to install (in v3 mode and above). Note that if you list exactly one filename or wildcard-pattern on a line by itself, with no explicit destination, then dh_install will automatically guess the destination to use, the same as if the --autodest option were used. OPTIONS
--list-missing This option makes dh_install keep track of the files it installs, and then at the end, compare that list with the files in the source directory. If any of the files (and symlinks) in the source directory were not installed to somewhere, it will warn on stderr about that. This may be useful if you have a large package and want to make sure that you don't miss installing newly added files in new upstream releases. Note that files that are excluded from being moved via the -X option are not warned about. --fail-missing This option is like --list-missing, except if a file was missed, it will not only list the missing files, but also fail with a nonzero exit code. -Xitem, --exclude=item Exclude files that contain item anywhere in their filename from being installed. --sourcedir=dir Look in the specified directory for files to be installed. Note that this is not the same as the --sourcedirectory option used by the dh_auto_* commands. You rarely need to use this option, since dh_install automatically looks for files in debian/tmp in debhelper compatibility level 7 and above. --autodest Guess as the destination directory to install things to. If this is specified, you should not list destination directories in debian/package.install files or on the command line. Instead, dh_install will guess as follows: Strip off debian/tmp (or the sourcedir if one is given) from the front of the filename, if it is present, and install into the dirname of the filename. So if the filename is debian/tmp/usr/bin, then that directory will be copied to debian/package/usr/. If the filename is debian/tmp/etc/passwd, it will be copied to debian/package/etc/. file|dir ... destdir Lists files (or directories) to install and where to install them to. The files will be installed into the first package dh_install acts on. LIMITATIONS
dh_install cannot rename files or directories, it can only install them with the names they already have into wherever you want in the package build tree. SEE ALSO
debhelper(7) This program is a part of debhelper. AUTHOR
Joey Hess <joeyh@debian.org> 9.20120909 2012-05-08 DH_INSTALL(1)
All times are GMT -4. The time now is 12:08 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy