首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"ls“在两个不同的终端中,在同一台机器上的同一文件夹中看到不同的文件。这怎么可能?

"ls“在两个不同的终端中,在同一台机器上的同一文件夹中看到不同的文件。这怎么可能?
EN

Unix & Linux用户
提问于 2022-08-09 12:20:07
回答 1查看 110关注 0票数 1

我刚才发生了一个很奇怪的情况。我在TMUX会话中管理在SSH上运行Ubuntu的云VM上的一些东西。现在,我有两个打开的窗格,它们可以看到不同的文件,即使它们位于同一个(虚拟)PC上:

Terminal #1:

代码语言:javascript
复制
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ pwd                                                                            
/home/pan/shared/Lammps/new-lengths/125                                                                                                 
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ hostname
gergo-skynet-master.desy.de                                                                                                             
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ ls                                                                             
*****_annotated.in  data.lammps             ******.py  process         rg           run1.restart                                                                                                                                           
SHAKE_10             dump_*****.lammpstrj  lammps.out   process.py      rg.dump      ******.data                                                                                                                                        
SHAKE_7              extract_data.sh         log.lammps   process_all.py  run.restart                                                                                                                                                         
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ 

Terminal #2:

代码语言:javascript
复制
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ pwd
/home/pan/shared/Lammps/new-lengths/125
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ hostname
gergo-skynet-master.desy.de
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ ls
*****_annotated.in  extract_data.sh  *****.py  process  process.py  process_all.py  ******.data
pan@gergo-skynet-master:~/shared/Lammps/new-lengths/125$ 

我不得不审查一些文件名,但你知道。截图:请看这里

我确认的事情:

  • 我在完全相同的文件系统位置。
  • ls在两个终端中都没有别名。
  • 我是两个终端的同一个用户,在同一台机器上。

我肯定上面那个是对的,但我很困惑,这怎么可能呢?即使在较低的终端上进行cd转换,它也不会看到上面的所有文件。我甚至不知道从哪里开始调试这种情况。因为同样的问题,我恐怕以后也不会看到一些重要的文件,所以我真的想知道在关闭下一个终端之前发生了什么。

你知不知道?什么额外的信息将是有用的?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2022-08-09 12:36:12

有几件事可能导致这种行为。考虑以下一系列事件:

  1. 创建一个目录,切换到它,并创建一些文件: mkdir /tmp/dir1 1 cd /tmp/file触摸文件{1,2,3}
  2. 从另一个终端重命名目录,用原始名称创建一个新目录,并使用不同的文件填充该目录: mv /tmp/dir1 1/tmp/di2 mkdir /tmp/file cd /tmp/dir1 1触摸文件{4,5,6}
  3. 在原来的终端中,我们看到$ pwd /tmp/dir1 1$ ls file1 file2 file3,在第二个终端中我们看到:$ pwd /tmp/dir1 1$ ls file4 file5 file6。

还有其他可能产生这种行为的情况(例如,在两个终端中运行单独的挂载名称空间-也许是在容器中),但以上似乎是最有可能的解释。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/713031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档