2016-04-12 7 views
0

ich eine .csh Datei in UNIX ausführen, die das folgende SkriptMit "find" in csh Skriptdatei

#!/bin/tcsh -f 
set path = "$1" 
find "$path" -name myfolder 

und nutzen Sie die folgende Meldung fehlt

find: Command not found. 

Was soll ich enthält?

Dank

Antwort

2

Die $path Variable ist etwas Besonderes - es sagt der Shell, wo Werkzeuge wie find zu finden. :-) Verwenden Sie einen anderen Variablennamen.

Von Ihrer interaktiven Shell können Sie sehen, wie $path normalerweise aussieht, indem Sie es widerhallen. Im Folgenden ist mein Weg auf meinem FreeBSD-Server:

ghoti% echo $path 
/usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin /home/ghoti/bin /usr/X11R6/bin /usr/games 

Wenn diese Liste etwas anderes ersetzt wird, zum Beispiel der Inhalt von $1, dann weiß Tcsh nicht in /usr/bin aussehen finden find:

ghoti% which find 
/usr/bin/find 
ghoti% set path = "hello world" 
ghoti% which find 
find: Command not found. 
ghoti% 
+0

Danke. Stupid mich :) – yagev

+0

@yagev, wir sind alle berechtigt, einer von ihnen hin und wieder. Aber jetzt hast du deine Quote erreicht .... ;-) – ghoti