Re: annoying BASH does not interpret quotation marks right?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Filippos Klironomos wrote:
Hello list,

I'm trying to parse a list of videos I have to convert them to a different format. The video names
have spaces in them so I do something like:

for file in *.flv ; do ffmpeg -i \"${file}\" \"${file}.avi\" ; done

but the quotmarks do not work and ffmpeg is not fed the whole video name but only the part up to the first space so it fails. On the contrary if I just echo the whole command like:

for file in *.flv ; do echo ffmpeg -i \"${file}\" \"${file}.avi\" ; done

I get exactly what I expect which is the ffmpeg command with the full file names enclosed in quotemarks. if I just highlight that output and paste it back on the command prompt it runs like
a charm.

In both cases bash is doing exactly what it should, and that is NOT
passing a quote-enclosed file name as you think it is.  If you have
a file named

          Some file name.fli

that is getting passed as three separate arguments:

      '"Some'    'file'    'name.avi"'

where I have inserted single quote marks to delimit the arguments.
The echo command will, of course, display that as:

       "Some file name.avi"

which looks like what you want, but isn't.

Just leave out the backslashes in your command.  That will let the
shell pass each file name as a single argument with embedded white
space, and ffmpeg should be happy with that.  If, for some reason,
you really wanted to pass the file name with enclosing quote marks,
you would have to do it this way:

for file in *.flv ; do echo "\"${file}\"" "\"${file}.avi\"" ; done

--
Bob Nichols         Yes, "NOSPAM" is really part of my email address.

--
fedora-list mailing list
fedora-list@xxxxxxxxxx
To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list
[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [Fedora Magazine]     [Fedora News]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Maintainers]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [Fedora Fonts]     [ATA RAID]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [SSH]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Tux]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Asterisk PBX]     [Fedora Sparc]     [Fedora Universal Network Connector]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux