Torsten Werner mail.twerner@googlemail.com (Fr 04 Jan 2008 17:31:33 CET):
Hi,
wenn ich die dash benutze, habe ich folgendes Problem:
$ touch bla $ . bla .: bla: not found $ ls bla bla $
Diesen Fehler gibt es mit jedem Abkömmling der ash, also auch mit busybox und kmk_ash aber nicht mit der bash. Woran liegts? Hat das Ding einen Bug oder bin ich zu doof? Ubuntisten hier?
Ich denke, das ist Posix, wenn ich mir die bash(1) ansehe:
source filename [arguments] Read and execute commands from filename in the current shell environment and return the exit status of the last command exe‐ cuted from filename. If filename does not contain a slash, file | names in PATH are used to find the directory containing file‐ | name. The file searched for in PATH need not be executable. | When bash is not in posix mode, the current directory is | searched if no file is found in PATH. If the sourcepath option to the shopt builtin command is turned off, the PATH is not searched. If any arguments are supplied, they become the posi‐ tional parameters when filename is executed. Otherwise the positional parameters are unchanged. The return status is the
Also würde mit einer bash in Posix-Mode wohl das selbe passieren. (Wobei ich das Gefühl habe, daß da wiederum Manpage und Realität unterschiedliche Dinge postulieren:
heiko@jumper:~ $ bash --posix heiko@jumper:~ $ touch jjj heiko@jumper:~ $ . jjj
Also vieleicht ein Bug der Bash?