Hogyan számoljuk ki a fájlok számát a parancssorban Unix-szerű rendszerek, vr-line - ingyen

Ma volt egy fej, látszólag egyszerű kérdést: „Hogyan kell kiszámítani a számát fájlt / mappát a konzol Unix-szerű rendszerek?”. A linuxos gép már nagyon kevés tapasztalattal, így itt a válasz azonnal jön a megoldás nem (szégyen.). Azt akartam, hogy ez az egész véget vas csavar, de a kíváncsiság győzött, és úgy döntöttem, hogy csatlakozzon a szerver fut FreeBSD. Fájdalmasan akart gyors kísérletekhez. Mi jött ki belőle - olvasható.

Tehát, SSH kliens dacosan pislogott a szemem, és bemutatott egy csupasz konzol bzdi. Általában meg kell dolgozni minden állat (linux'ami) és gonosz lények (a freebsd) taxi Lord_of_fear. Tudtam, hogy az Úr biztosan tudja a választ arra a kérdésre, aggasztott, de úgy döntött, hogy megpróbálja elérni a saját döntéseit.

Eleinte azt hittem, hogy az én szerény igényeket teljesíteni tudja az ls parancs. Dugta erre-arra, de amit én, ha nem talál. Ezért gondoltam, hogy ls? Igen, mert az ls felsorolja a fájlok és mappák az adott könyvtárban lévő különböző nézetek. Szeretem, ha valaki egy megfelelő tapasztalat hiányában logikusnak tűnt, hogy a számlálási művelet polyubas fájlokat kell megszervezni. Sajnos, tévedtem. Nos, semmi sem volt a pick.

És akkor ez volt a legérdekesebb. Eszembe jutott, hogy van egy ilyen csapat, mint a wc. Azok számára, akik nem tudják megmondani. Wc-vel lehet számolni, hogy hány karaktert / vonal (l kulcs) / byte, stb Bit zavaró kanyarulatok agyam generált a következő határozatot:

A csapat ezután köpött rám száma 22. A kísérlet sikeres volt. Kaptam több fájlok és könyvtárak az aktuális könyvtárban. A cél az ilyen értek el, de aztán úgy döntött, hogy nem lenne jó, hogy pontosan a fájlok számát, azaz a kivéve a könyvtárakat. Ismét elkezdett twist, és forgat kombinációja húzza ki a következőket:

Parancs sikeresen befejeződött, és megmutatta a fájlok száma. Arról, hogy hogyan is működik ez, fogok beszélni alatt, de most azt mutatják száma könyvtárak számát:

Nem tévedtem, a csapat ismét ad helyes eredményt. Most voltam teljesen elégedett. A válasz az volt a kérdés, de én nem azt kívánta, hogy egy másik tesztet. Ezúttal úgy döntöttem, hogy számolja meg a fájlokat egy bizonyos kiterjesztése. Gondolkodás nem szükséges. Csak megváltoztatni a parancs típusa:

Ahogy az várható volt, ebben az időben, a csapat is hibátlanul sikerült. Most elkalandozik egy kicsit, és megpróbálja kitalálni, hogy mit írtam itt ilyen. Kezdjük az ls c l paramétert. Maga az ls parancs a Unix világban az, hogy kap egy listát a fájlok / mappák egy adott könyvtárba. Amennyiben a kiegészítő információ jelenik meg, ha hívja ezt a parancsot adja meg a paramétert l, akkor minden fájl / mappa. Alatt további információkat, úgy értem dátuma, a fájlméret, és így a hozzáférési jogok

Hogyan számoljuk ki a fájlok számát a parancssorban Unix-szerű rendszerek, vr-line - ingyen

Példa kijelző információt használja az ls parancs a kulcs l azt az ábrán látható. Nézd meg közelről az ábrát. Ha nem érti a Unix-szerű rendszerek, azt tanácsolom, hogy fordítsanak nagyobb figyelmet a legelső oszlop. Úgy festett engedélyeket. Az első karakter (-) előtt egy maszkot a jogok azt jelenti, hogy egy fájlt. Letter d ellenkezőleg, ad nekünk egy világos üzenetet, hogy ez - a katalógusban. Kiderült, hogy meghatározza a fájlok számát egy könyvtárban, csak meg kell számolni vonalak alkalmazásával származtatott ls -l paranccsal, ahol az első szimbólum egy kötőjel (-).

Ahhoz, hogy megoldja ezt a problémát, azt használja a grep. Grep magát hívom ugyanazon a vonalon, ahol ls. Miután a ls -l parancs idézem karakter |, ami azt jelenti, hogy az egy parancs kimenete (ls -l) kell átadni a paraméter, a csapat azt mondta, miután a csövet. Remélem, ez a lényeg világos. Áttérve.

Grep maga keresi meg a szöveges fájlokat. Esetünkben ez a parancs használható kiválasztásához kezdetű sorokat, a (-). Tudjuk, hogy a keresési kell tenni az első egy sor (azaz, hogy ellenőrizze, hogy az első karakter), és ha igen, adja meg a grep a pontosítás. A világ a Unix-szerű mindent megtettek nagyon rugalmas, és furcsa lenne, ha grep nem támogatja a reguláris kifejezéseket. Ez, és a bűn nem használni. A probléma megoldására használjuk a szerkezet: ^ -. Azok, akik még nem kezdett el tanítani alapszakaszban, elmagyarázom. Ez a kifejezés azt mondja, hogy az első karakter legyen - vagyis ,. Ugyanebben algoritmust használom, hogy számolja meg a könyvtárakat. Csak ebben az időben, nem pedig egy - idézem a levelet d (könyvtár). Gondolj példáját megszámoljuk a fájlokat php már nem kell magyarázni.

Ilyen egyszerű ez, hogy számolja meg a fájlok / mappák egy szörnyű és borzalmas konzol Unix-szerű rendszerek. Sok szerencsét!

Idézet ls -l | grep php | wc -l
Nem tudsz:
ls -l * .php | wc -l
Miért ok grep, amikor ugyanazt a műveletet végre lehet hajtani ls?

Kapcsolódó cikkek