我有一个发现+ ls向我展示了几个文件的.sh和.sh.bak。
我复制了其中一个文件,以为我将拥有3个文件,但是
ls退出,显示其中一个文件.sh.bak
我在重复历史记录中的发现+ ls,从那以后我就比较了副本
查看2个文件:
[root@localhost jeos]# find / -name del-non-*-locales.sh* -execdir ls -lh {} \;
-rwxr-xr-x. 1 root root 4.4K Dec 17 2016 /root/proj/vm/locale/backups/del-non-eng-locales.sh.bak
-rwxr-xr-x. 1 root root 4.4K Dec 17 2016 /root/proj/host.setup/manual/del-non-english-locales.sh
复制1
[root@localhost jeos]# cp ~/proj/host.setup/manual/del-non-english-locales.sh .
向上箭头+输入...以为我现在会看到3个文件
[root@localhost jeos]# find / -name del-non-*-locales.sh* -execdir ls -lh {} \;
-rwxr-xr-x. 1 root root 4.4K Dec 17 2016 /root/proj/host.setup/manual/del-non-english-locales.sh
-rwxr-xr-x. 1 root root 4.4K Nov 9 11:05 /root/proj/jeos/del-non-english-locales.sh
find + ls不变,退出的文件显示在这里:
[root@localhost jeos]# ls -lh /root/proj/vm/locale/backups/del-non-eng-locales.sh.bak
-rwxr-xr-x. 1 root root 4.4K Dec 17 2016 /root/proj/vm/locale/backups/del-non-eng-locales.sh.bak
您需要报价del-non-*-locales.sh*
。
第一次运行是有效的,因为当前目录中没有del-non-*-locales.sh*
与之匹配的任何文件,因此默认情况下,模式会扩展到自身(包括星号和全部)。
复制~/proj/host.setup/manual/del-non-english-locales.sh
到当前目录后,del-non-*-locales.sh*
展开为del-non-english-locales.sh
,因此实际上是在搜索该确切名称,而不是del-non-*-locales.sh*
。这就是为什么del-non-eng-locales.sh.bak
不再匹配。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句