the slash (/) after a directory name on shell commands
18
votes
3
answers
7730
views
I have a little question here.
If I have two files, say
filea
and fileb
, mv filea fileb
would
- delete fileb
- rename filea
to fileb
Then if I have two directories, say dira
and dirb
, mv dira dirb
would
- move dira
into dirb
(it will become dirb/dira
)
Noting that in both cases there are no notice or message, then this is pretty inconsistent to me. I think mv dira dirb
should just overwrite dirb
with the contents of dira
(or merge the two directories under a directory named dirb
).
I remember reading somewhere that a directory name with a slash (like dira/
) is treated like a directory, and name with no slash (like dira
) is treated like a file (to certain extents, of course). Anyway now I want to make the shell (zsh and possibly bash) respect my notation of a directory by using a slash. Is there a terminal option which enable me to enforce that?
To clarify, here is my desired behaviour:
- mv dira dirb
results in dirb
being overwritten with the contents of dira
- mv dira dirb/
results in dira
being moved into dirb
(in dirb/dira
)
Has anyone thought the same way as me? Or am I just weird?
Asked by phunehehe
(20536 rep)
Aug 20, 2010, 09:53 AM
Last activity: Aug 22, 2021, 02:32 PM
Last activity: Aug 22, 2021, 02:32 PM