Every directory has a shorthand name to refer to itself. That special name is the `.' (dot) and it is a map to the inode of the directory.
It is quite useful when you are in a directory and you only have to enter a `.' to refer to where you are, instead of the whole path.
That's why people refer to the `.' as the "current directory". Or "`this' directory".
Using your example:
It would be as saying: "`That' directory" and it doesn't make much sense, since you have to enter the full path already, including the name of the `that' employee_files directory.
In /home/rahualux/details, there can not be two inodes that has the same name, which means, there can NOT be a file named employee_files and a directory employee_files. Therefore, the trailing `/' in /home/rahualux/details/employee_files/ is not necessary. mv knows that it is a directory.
To summarize the concepts using your example:
In human terms, it means, move the file emp.csv to employee_files, if employee_files is a directory, that directory gets a file named emp.csv, if employee_files is a file, that's what emp.csv would be called.
employee_files has to be a directory, since multiple `anything.csv' can not be renamed to be called employee_files, due to the rule I mentioned before of "there can not be two inodes that have the same name, in the same directory"
I agree with what Aia said, but there are cases where adding a "/." (or just "/") to the end of a pathname that is supposed to be a directory can be helpful. For example, with the command:
it is true that mv will issue a diagnostic if /home/rahualux/*.csv expands to a list of more than one file if /home/rahualux/details/employee_files is not a directory; but if the *.csv only matches one file and employee_files does not exist (or is a non-directory file), the file matching *.csv will be copied to or linked to employee_files destroying its previous contents if there were any. While, under these circumstances, the command:
will get a diagnostic saying that employee_files is not a directory.
When I am typing a command into the shell to move a file into a directory, I usually add a trailing "/" on the directory name just to protect against typing mistakes. I tend not to do that in scripts if I am sure that the directory structure is safe. If the script I'm writing is moving files around in an file hierarchy where several people have write access and multiple people/processes might be rearranging files while the script is running, I frequently use a trailing "/" on the target directories so the script fails as soon as something goes wrong.
Whether or not you decide to add a "/" or "/." to the ends of directory names is something that will probably depend on your typing skills, how many times you lose a file by accidentally misspelling a directory name, how much pain you have gone through while trying to recover a file you accidentally lost due to typing mistakes, and how important the files you are moving at the moment are to you.
These 2 Users Gave Thanks to Don Cragun For This Post:
I have one file like this:
NEW
/ifs/SQL_Backups3/SQL_SharePoint1
NEW
/ifs/SQL_Backups/SQL_SharePointThis can be easily sorted by the following command:
cat file| sort -k3,3nBut I have another file like this:
/Pool0/local/Benchmark
/Pool0/local/CRAD
/Pool0/local/crdhw/espresso_scratch1... (5 Replies)
I am trying to output a log file from cp usage. I think this can be achieved. In my code I have this.
cp -i -v ~/files/* ~/backups/oldfiles/;; > ~/logs/logfile.logThe error I get is "syntax error near unexpected token '>'
What am I missing? (7 Replies)
Hi,
I have few doubts regarding "sudo" command. It acutally allows access to other commands as a different user. It stands for "superuser do".
Now, we execute a command as
sudo su - oracle
Can you please tell me what does it do actually, thank you. (6 Replies)
Hi all,
Can you please tell me the command, with which one can know the amount of space a specific directory has used.
df -k . ---> Displays, the amount of space allocated, and used for a directory.
du -k <dir name> - gives me the memory used of all the files inside <dir>
But i... (2 Replies)
Hello
We have used Glance command to check Cpu Uage , bit new to Glance command ,
HP-UXdev # glance
B3692A GlancePlus C.03.71.00 18:21:16 nedunix2 9000/800 Current Avg High
--------------------------------------------------------------------------------
CPU Util S SN NU | 43% 59%... (1 Reply)
how can I find cpu usage memory usage swap usage and
I want to know CPU usage above X% and contiue Y times and memory usage above X % and contiue Y times
my final destination is monitor process
logical volume usage above X % and number of Logical voluage above
can I not to... (3 Replies)
Hi All,
I am using cksum command in s script to check integrity of set of files transffred across the network.
What are the advantages and disadvantages/limitations of this command?
Is the byte count return reliable?
What are the other alternatives I could use for this purpose?
... (2 Replies)
Hi, i would like to determine how many shell scripts are in a directory. Someone recommended me the file command, but i don't know how to use it in that way.
anybody???
Thanks!!! (8 Replies)