/ / Čo je zlé na nasledujúcom prístupe (rm + xargs) - linux, bash, grep, xargs, rm

Čo je nesprávne v nasledujúcom prístupe (rm + xargs) - linux, bash, grep, xargs, rm

Môže mi niekto povedať, čo je nesprávneho v nasledujúcom spôsobe vymazania súboru, ktorý začína znakom „#“.

Súbory v adresári:

ola@ola:~/.scratch/hmm$ ls
five  #four  #one  six  #three  #two
ola@ola:~/.scratch/hmm$

ola@ola:~/.scratch/hmm$ ls . |grep "#.*" |xargs rm -rf
ola@ola:~/.scratch/hmm$ ls
five  six
ola@ola:~/.scratch/hmm$

Ps: Spýtam sa na nasledujúcu otázku

Bash: Ako odstránim všetky svoje textové súbory začínajúce na #?

odpovede:

0 pre odpoveď č. 1

ls môže zoznam súborov vo viacerých stĺpcoch a váš regulárny výraz nie je ukotvený ani na začiatku názvu súboru. Problematické budú aj názvy súborov obsahujúce medzery.