Hello Jeff, On Mar 17, 2011, at 4:42 PM, Jeff Berwick wrote: (snip, snip) > ()I was running my script with the following line: > > sh websites (websites being the filename) > > If I run it with the following command, it leaves me there when done: > > . websites (a dot before the name | websites still being the filename)
The first way wasn't working because the directory change was being done in the shell that you were invoking (the sh in the beginning of the line), not the Terminal shell. Basically you were launching a program called sh and telling it to run the series of commands in the file websites and then terminate. The second way works but it also isn't running a script. In this case you are telling the Terminal shell to execute the series of commands in the file websites, which works for what you want, but doesn't run the script as a separate process and also doesn't, for instance, allow using a different shell in the script, like tcsh or even perl or python. To create a shell script, you must: 1) Create a text file with the "hash bang" in the first line, like: #!/bin/bash - note the exclamation mark (the bang) after the hash. Note also there's no spaces 2) Give the file execution permissions. 3) To run it, place the file in a directory in your PATH environment variable, or do something like: ./websites where ./ is interpreted by the shell as the current directory. If you had placed the file in a directory called scripts in your home, you could do: ~/scripts/websites or /Users/myuser/scripts/websites Hope my explanation wasn't too confusing :-) HTH, André >> -- You received this message because you are subscribed to the Google Groups "MacVisionaries" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/macvisionaries?hl=en.
