Re: Bash passing a filename with a space into xargs?
"Michael F. Stemper" <[email protected]> Fri, 1 Apr 2022 15:07:52 -0500
| Newsgroups | alt.comp.lang.shell.unix.bourne-bash |
|---|---|
| Organization | A noiseless patient Spider |
| Message-ID | <[email protected]> |
On 01/04/2022 11.21, Chris Roberts wrote: > How can I get this to recognize a filename with a space? > I am manipulating files in my script, but at the portion where I want to do a diff. I cannot get it to work. > Would someone out there know of a workaround? (Besides saying "don't have filenames with spaces in them). :-) > > This is in bash: > uno="try this.txt" > dos=blah.pdf > echo "$uno" "$dos" | xargs -l bash -c 'echo uno:$0 dos:$1' | xargs > #OUT: uno:try dos:this > > echo "$uno" "$dos" | xargs -l bash -c 'echo uno:$0 dos:$1' > #OUT: uno:try dos:this > > echo uno:"$uno", dos:"$dos" #this works, but doesn't help in my script. > #OUT: uno:try this.txt, dos:blah.pdf I can't quite tell what you're trying to do, but single quotes around the definition of uno seems to help: ============================ #!/bin/bash uno='try this.txt' dos=blah.pdf ls "$uno" "$dos" ============================ -- Michael F. Stemper Psalm 94:3-6