Problem with shell script while spaces encountered in directory names
Hi,
I am having issues with the jar -tf command when I put in the shell script.
The command runs fine from the command line as shown below.
But when I put in a shell script(shown below) and the directory name has spaces.In this case "Virtual Box Dropped" has spaces.It gives an error as shown below.
----test1.sh code------
Error:
I tried to put the double quote but it doesnt work?
Any ideas?
Thanks
Moderator's Comments:
Please use code tags as required by forum rules!
Last edited by RudiC; 04-21-2016 at 04:23 PM..
Reason: Added code tags, also around error output
Hi,
I am having issues with the jar -tf command when I put in the shell script.
The command runs fine from the command line as shown below.
But when I put in a shell script(shown below) and the directory name has spaces.In this case "Virtual Box Dropped" has spaces.It gives an error as shown below.
----test1.sh code------
Error:
I tried to put the double quote but it doesnt work?
Any ideas?
Thanks
Moderator's Comments:
Please use code tags as required by forum rules!
Hello vinoo128,
Could you please try changing your code to as follows and let me know if this helps you.
because anyways find is looking for the current directories files only. Let me know how it goes for you.
This will not help with the quoted file having spaces in its name ("VirtualBox Dropped Files"). Enclose *.jar in double quotes.
[..]
Actually it does, because Ravinder used double quotes around the variable expansion "$jar", so spaces will be preserved and *.jar must not be put in double quotes, because the glob expansion will not work then.
Ravinder's approach is correct, but it only works for the current directory...
It even works with multi-line file names:
compare with find:
Last edited by Scrutinizer; 04-22-2016 at 01:21 AM..
These 2 Users Gave Thanks to Scrutinizer For This Post:
First: `man find` shows there are options for "UNUSUAL FILENAMES" (e.g. filenames with spaces).
Second: using a "for loop" may be dangerous, there can be more results than a Unix line can handle. I would prefer a while loop.
Third: Scrutinizer already mentioned to use the -exec option of the `find` command. To my opinion this is the best method.
I'm making a shell script to:
-copy directories to a new location
-perform conversions on the files within the copied directories
-move the newly created files to a new directory
Please see my super basic script and notes below... and thank you thank you thank you in advance !!
... (1 Reply)
I am writing a shell script to cd to a folder.
folder name is "October Scripts"
I am currently storing the name of folder in a shell variable as so path="October\ Scripts/".
If I do cd $path I receive the error bash: cd: October\: No such file or directory
What am I doing wrong?
Kindly... (3 Replies)
how can i make find/sed to include directory names with spaces
the command is like this
for i in `find wp-content/themes -type f -print0 | xargs -0 grep -l
-iE 'e'`;do sed -i -e 's/word1/word2/gI' "$i";done
but it skips one directory names with spaces
sed: can't read ./Nova: No such... (5 Replies)
Hi,
I have an issue with switching to other directory through shell script. I have used
cd /Music"
but that doesn't help me. Then I have also tried using
alias proj 'Music'
alias
then I get the error permission denied but i set the chmod 777 Music. I am using cShell for my... (3 Replies)
Hi,
I did the following script:
DIR=`pwd`;for i in `find . -name GESTION -type d`;do cd $i/..;setfacl -R -m g:directores:rwx,
GESTION;echo $DIR'/'$i;cd $DIR;done
This code do the following actions:
1. Starting inside a folder, it's searching for any folder called "GESTION"
2. Every time... (3 Replies)
Hi Gurus,
I have a requirement.
cat /usdd/Sample/"NDDF Plus DB"/"NDDF Descriptive and Pricing"/"NDDF BASICS 3.0"/"Pricing"/1.txt |
sed 's/*|*/|/g' |
sed 's/^*//'|
sed 's/^*//;
s/*$//' > temp.txt
In unix prompt the above command is reading the file 1.txt and I am... (1 Reply)
Hi,
What's the best way to find all files under a directory - including ones with space - in order to apply a command to each of them. For instance I want get a list of files under a directory and generate a checksum for each file.
Here's the csh script:
#!/bin/csh
set files = `find $1... (5 Replies)
Hi Unix Guru's,
I have encountered a strange problem with doing a restore on a local sunu machine.
We have 2 live system (v880, v450) and 1 test system v440.
All the machines are sun4u and using sun os 8.0
We have 2 backup device. One Bcakup device connected with v880 and another backup... (0 Replies)
The script below was written to select files and convert a particular string to something other and replace that file. However, I came across some issues with filenames that contain spaces, any suggestions to get around this? Any other suggestions that may apply to this code would also be... (5 Replies)