Emacs: eshell pains

By Xah Lee. Date:

some random collection of problems of using eshell. (may be because i don't understand eshell)

if you don't know what eshell is, see: Emacs: M-x eshell

in shell, i can run this to convert all gif to png:

find . -name "*gif" | xargs -l -i basename "{}" ".gif" | xargs -l -i  convert "{}.gif" "{}.png"

but in eshell, i get this error:

convert: unable to open image `.gif': No such file or directory.
convert: missing an image filename `.png'.
convert: unable to open image `.gif': No such file or directory.
convert: missing an image filename `.png'.

find problem?

in emacs eshell, why the following doesn't work?

find . -name "*bmp"
~/web/xahlee_org/math/i/bejeweled $ find . -name "*bmp"
/usr/bin/find: paths must precede expression: x183313.bmp
Usage: /usr/bin/find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression] 

Source plus.google.com

Andrew Hyatt: Try echoing to make sure that eshell is doing what you think. Or `set-trace' the call-process call to see what exactly is getting run.

, it works now. No idea why.

Liket it? Put $1 at patreon. Or Buy Xah Emacs Tutorial. Thanks.