Ako rozlíšiť medzi súborom a adresárom v Perl

Povedzme, že vytvárate skript Perl na prechádzanie súborovým systémom a zaznamenávanie toho, čo nájde. Pri otváraní úchopov súborov musíte vedieť, či máte čo do činenia so skutočným súborom alebo s adresárom, s ktorým sa správate inak. Chcete globalizovať adresár, takže môžete aj naďalej rekurzívne analyzovať systém súborov. Najrýchlejší spôsob, ako rozoznať súbory z adresárov, je použitie vstavaného PerluOperátori testovania súborov. Perl má operátorov, pomocou ktorých môžete testovať rôzne aspekty súboru. Operátor -f sa používa na identifikáciu bežných súborov namiesto adresárov alebo iných typov súborov.

Najprv vytvoríte dva reťazce: jeden ukazuje na súbor a druhý ukazuje na adresár. Ďalej vyskúšajte $ filename s -f operátor, ktorý skontroluje, či sa jedná o súbor. Týmto sa vytlačí text „Toto je súbor“. Ak v adresári vyskúšate operátor -f, nevytlačí sa. Potom urobte opak pre $ DirectoryName a potvrďte, že je to v skutočnosti adresár. Skombinujte to s adresár glob triediť, ktoré prvky sú súbory a ktoré sú adresáre:

instagram viewer
instagram story viewer