some questions...

hello. I'm fairly new to unix and have a few script writing questions for any experienced users. However, my computer is a mac so I need commands that will run in a macosx terminal.
ok:
q1) im writing a script where I want to get the history in the terminal and then write it to a specific text file. I'm not sure how to do it. I tried:
history | touch /dir/dir/dir/etc/filename

can anyone tell me why it didnt work/what would be the right command/commands.

q2)Im writing another script and I want the terminal to prompt the user for their password. I dont know how to collect user input or prompt them. Is it possible? All i can do is: echo 'password:'

but thats not an input prompt and the [ownername] command ready thing is just gonna pop back up once the script is done executing and they wont enter a password near my input prompt. how do i actually make a input/prompt thing?

q3)i have yet another script (lets call it script.sh). I want script.sh to execute when a user clicks on it rahter than them having to execute it with the ./ command in the terminal. How?

Well those are my questions. Hopefully someone can answer them. Thanks alot.

For 3), you may put your script in /usr/local/bin. Then, if /usr/local/bin is in your PATH, then you can invoke it without ./

Ok, but I want the script to open from the desktop just by double clicking it. Is there a way to have a script execute from anywhere by just double clicking the file?How can I do that instead of putting it off in the usr/local/bin folder?

Sorry I misread that. Then that's an issue with your GUI used. I use KDE, but I believe GNOME also has a similar function that lets you create a "shortcut" on the desktop just as you do on Windows. Just right click on your desktop and you ought to find an option like create a new link.

I think I may be doing something wrong, but I tried what you suggested. I control-clicked(i have a mac, no right clicks) on the desktop and it brought up the options: Help, New Folder, Get info, and Change Desktop Background. Then I control-clicked on the file i want to execute in the terminal via the desktop(test.sh) and it brought up the options: Help, Open, Open With, Get Info, Move To Trash, Make Alias, Duplicate, and Copy "Test.sh". I tried to change Open With to open with the terminal but it wouldnt let me. I think I'm doing something wrong.

I don't know your environment, but I'll make a few guesses based on what I know.

touch does not read stuff from standard in. So piping stuff to it does nothing. Try: history > /dir/file

And "echo -n prompt " might work. Or "echo 'prompt \c'.

I guess you use GNOME. I don't know mac, but you ought to find a "New Launcher" menu item which allows you to create a shortcut, in M$ terminology.

http://www.gnome.org/learn/users-guide/2.4/gosdeskback-9.html

Thanks alot cbkihong and perderabo, alot of your suggestions helped out a ton!

ok, ive got another question: I want my script to execute when a user logs in. Putting it in Startupitems wont do what I want because that only executes scripts on computer bootup. I need a script to execute on login. How?(i run macosx btw)

that works when i run it with "source file.sh", but the history command doesnt seem to work when run with the "./file.sh" command. Can you help me out?