Simple question regarding touch and mv
fry.kun at gmail.com
Sat Dec 20 19:10:22 UTC 2008
Daniel B. Thurman wrote:
> I wonder why this fails:
> # touch '-foo'
> touch: invalid option -- 'o'
> # touch '\-foo' (works)
> # mv '-foo' foo
> mv: invalid option -- 'o'
> Try `mv --help' for more information.
> What confuses me is, if foo was surrounded by
> double-quotes, then expansion may be a problem
> but with single-quotes, no expansion is performed,
> so why does both commands fail? Is this some
> quirkiness in the way command arguments are
> being handled?
> Just wondered,
The error, "touch: invalid option -- 'o' " comes from touch, not from shell.
Shell does indeed ignore the '-foo' option and passes it in as a string
to touch, after removing the single quotes. So touch interprets it just
as if it was called this way: touch -foo
More information about the users