I'm a newbi to Unix and the last few weeks I have been trying to learn Unix through a book called Unix in 24 hours. I have tried advanced shell programming (that's what the chapter is called) today and what the excersise was all about was to create mylocate - a version of locate that is a shell script. The first step was to write a script that would build a database of every file and directory that is accessible to my login. Once that script was done and changed to executeable I tried it out as he (the author) had suggested and I got outputs similar to the ones in his book. So that step worked. Next was to create a script that used grep to allow easy file searching. (I try to understand as much as I can but not everything is always explained, so I'm still stumbling around in the dark quite a bit...). The second script was called mylocate. Once that was executable I again did some testruns he suggested and they worked (e.g. ./mylocate "\.c$" | wc -l).
The problem started once I did the next step - to make it part of my overall environment...
So like he suggested, I went back to $HOME with cd (my $HOME is /home/ubuntu), created a new bin (mkdir bin) and moved both scripts I had written somewhere else (in my file that is in home/ubuntu/data/user) into the new bin (with mv). When I move to bin and check with ls, both scripts are there (mkmylocatedb and mylocate). Both are still executable. Next step would be to modify PATH so that at the end I only need to type in command names from my new bin (he wanted to link it to .profile). He said to write:
Once I did that, nothing worked - and any other scripts I wrote afterwards and are linked to bin are not working either. I tried every combination I could and nothing, only command not found. I went to .profile and opened it with the vi editor - deleted the export blablabla out and saved the changes. Now at least ./mylocate works again but nothing else and only when I have moved to bin - anywhere else I get the same error message as before.
.profile says first something about its execution, when and when not it's read, where the default is set (in /etc/profile unmask 022), some info about if running bash (my shell is bash) and then the last if statement is:
So my private bin exists, the command I was supposed to write was $HOME/bin - and as $HOME is /home/ubuntu it should work, shouldn't it? What do I have to type (and more importantly why) to actually link the new bin to .profile (or would I have to link it to /etc/profile???) so I could actually execute it like I can ls or cat or cp or any other command? (wherever I am..)
Sorry for this lengthy thread. I hope I haven't left out any important information - if I did, please let me know.
.profile is executes only on login. You should logout and login. The better way is to add your changes in PATH to .bashrc - it executes every time an interactive shell (bash) starts.
PS: And I could'n read the whole post.
PSS: Just 5 cents. I have the file ".shrc" where all common commands for all shells are (like export PATH) and source this file in every specific "rc" file - .bashrc, .kshrc, and .zshrc in my case.
Dear,
Please help me to configure application clustering in linux ubuntu. Application is running apache server.
Please help
Jewel
---------- Post updated at 01:07 PM ---------- Previous update was at 12:48 PM ----------
linuxvirtualserver dot org
in this link i go there's three... (2 Replies)
I'm trying to use the sytem() to send a terminal command. I haven't been able to run the program. Can someone show me how am I suppose to write this command: (echo "#o1" > /dev/ttyUSB1). Is there a better way to use the command on the C file so that when I call the file and run it on the terminal... (11 Replies)
Hi,
I am installing perl and rsnapshot on the OS of a Western Digital MyBook disk.
To install perl the ./Configure command tells me that both 'tr' and 'split' are missing. I don't find them on the net.
Where can I download them?
Thanks.
Charles. (2 Replies)
Hi,
I can see a folder is mounted in my Ubuntu 8.04 machine through samba share. But, I could not find it out its actual location in the disk.
If I issue the command
sudo smbclient -L user
its listing the folder as 'sharename' and 'type' as disk
So, anyone help me how can I locate the... (0 Replies)
My PC (Esprimo, 3 yeas old) has one hard drive having 2 partitions C: (80 GB NTFS, XP) and D: (120 GB NTFS, empty) and and a 200 MB area that yet is not-partitioned.
I would like to try Ubuntu and to install Ubuntu on the not-partitioned area . The idea is to have the possibility to run... (7 Replies)
In my /etc/profile, my $PATH variable is set as follows:
$PATH =/sbin:/usr/sbin:/usr/bin:/etc
Then how do I add an additional directory to it? say
/export/home/abd/rose
Please advise.
Thanks!
Deepali (3 Replies)