On Tue, May 28, 2019 at 04:43:42PM +0200, Andreas Kusalananda Kähäri wrote: > On Tue, May 28, 2019 at 11:56:04AM +0000, r...@minigeek.srve.com wrote: > > Configuration Information [Automatically generated, do not change]: > > Machine: x86_64 > > OS: linux-gnu > > Compiler: gcc > > Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='x86_64' > > -DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='x86_64-redhat-linux-gnu' > > -DCONF_VENDOR='redhat' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash' > > -DSHELL -DHAVE_CONFIG_H -I. -I. -I./include -I./lib -D_GNU_SOURCE > > -DRECYCLES_PIDS -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions > > -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fwrapv > > uname output: Linux minigeek.srve.com 2.6.32-754.10.1.el6.x86_64 #1 SMP Tue > > Jan 15 17:07:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux > > Machine Type: x86_64-redhat-linux-gnu > > > > Bash Version: 4.1 > > Patch Level: 2 > > Release Status: release > > > > Description: > > I deleted the file .DS_Store fom a fat32 partition as root. bash > > properly warned me and I answered y which deleted that file. > > A second different file, named ._.DS_Store was also erased - but > > without warning, and I did not ask for this. > > Therein lies the bug. > > I recreated two text files with different contents having those same > > names, and repeated the steps - same problem - both files got erased with > > the one rm command for just one of them. > > > > Repeat-By: > > Create those 2 files. Delete just one. > > > > Fix: > > probably some shell filename matching code has an error? > > > > > > What was your actual command when deleting the file(s)? If no filename > globbing pattern was used, then I think the shell can be ruled out as > the culprit. If a globbing pattern was used, e.g. .*DS_Store .DS_Store
Sorry, that last line got mangled by vim. That should read: If a globbing pattern was used, then there may be an issue with the pattern rather than with the shell. > > $ touch .DS_Store ._.DS_Store > $ ls -la > total 8 > drwx------ 2 kk wheel 512 May 28 16:41 . > drwxrwxrwt 7 root wheel 512 May 28 16:41 .. > -rw-r--r-- 1 kk wheel 0 May 28 16:41 .DS_Store > -rw-r--r-- 1 kk wheel 0 May 28 16:41 ._.DS_Store > $ rm .DS_Store > $ ls -la > total 8 > drwx------ 2 kk wheel 512 May 28 16:41 . > drwxrwxrwt 7 root wheel 512 May 28 16:41 .. > -rw-r--r-- 1 kk wheel 0 May 28 16:41 ._.DS_Store > > Note that bash, the shell, would not warn you about deleting files. > This may possibly be something that rm does if used with its -i option, > or under some other circumstances having to do with the permissions on > the files. > > -- > Kusalananda > Sweden -- Kusalananda Sweden