bash a zmazávanie súborov

Sekcia: Programovanie 21.02.2017 | 18:48
Avatar Stanislav Hoferek Greenie 18.04  Používateľ

Ahojte, riešim veľmi jednoduchý problém. ako vymazať viac súborov naraz cez terminál?

Niečo takéto jednoduché funguje samozrejme dobre:

rm /leto/leto.jpg && rm /zima/zima.jpg

Čo ale robiť, ak je jeden súbor, v tomto prípade leto, vymazaný? Postupnosť príkazov sa zastaví. Ja by som si prial urobiť to tak, aby sa súbor zima.jpg vymazal aj vtedy, ak v priečinku leto nie je súbor leto.jpg. Nejaké nápady?

    • RE: bash a zmazávanie súborov 21.02.2017 | 19:07
      Avatar WlaSaTy   Návštevník

      skús vynechať && rm

    • RE: bash a zmazávanie súborov 21.02.2017 | 19:10
      Avatar Dušan Kreheľ Debian  Používateľ
      Nejaké nápady?

      Použi prepínač -f (od anglického force). A možeš dať mazať aj viac ako jeden súbor v parametroch rm.

      dusan@pc:~$ mkdir maz
      cd dusan@pc:~$ cd maz
      dusan@pc:~/maz$ ls
      dusan@pc:~/maz$ touch 1 2
      dusan@pc:~/maz$ ls
      1  2
      dusan@pc:~/maz$ rm -f 1 2 3
      dusan@pc:~/maz$ ls
      dusan@pc:~/maz$ 
      
      človek z Prešovského kraja
    • RE: bash a zmazávanie súborov 21.02.2017 | 19:42
      Avatar bedňa LegacyIce-antiX  Administrátor

      && je logická podmienka AND, tak pokiaľ nieje splnená prvá podmienka, nevykoná sa ani druhá.

      Namiesto && použiješ ;

      rm /leto/leto.jpg ; rm /zima/zima.jpg
      Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org