Egyszerűen adjon hozzá sorszámokat egy szöveges fájlhoz a parancssor segítségével

Anonim

Brian megkérdezi: „Sorszámokat kell hozzáadnom egy szöveges fájlhoz. Nem a sorszámokra gondolok a szövegszerkesztőben, hanem arra, hogy a szövegfájlon belül minden elem mellé egy számot adjunk. Lehetséges ezt automatizálni, vagy manuálisan kell szerkesztenem a fájlt, begépelve az 1-es, 2-es, 3-as számokat, és megőrülök?”

Igen, egyszerűen bekódolhatja a sorszámokat szöveges fájlba… megmutatjuk, hogyan kell ezt pontosan megtenni! Hogy teljesen világos legyen, ez annyit tesz, hogy minden új szövegsor bal oldalához egy számláló sorszámot kell hozzáadni, minden sor előtt a megfelelő számot.Ez keményen kódolja a szövegfájlba, ami azt jelenti, hogy más, mint a sorszámok egyszerű megjelenítése egy olyan alkalmazásban, mint a TextWrangler, VIM vagy BBEdit.

A kezdéshez nyissa meg a terminált, és tegye a következőket a parancssori promptnál:

Macska használata sorszámok szövegfájlhoz való hozzáadásához

Ez messze a legegyszerűbb módszer: cat -n file > file_new

Egyszerűen cserélje ki a „file” szót arra a fájlnévre, amelyhez sorszámokat szeretne hozzáadni, és módosítsa a „file_name” értéket az exportált névre.

Használhatja az 'nl' parancsot is a következők szerint:

Kemény sorszámok szövegfájlba az nl paranccsal

Ismét cserélje ki a „filename” és a „filenamenumbered” szavakat annak a fájlnak a megfelelő nevére, amelyhez sorszámokat ad hozzá:

nl -ba -s ': ' fájlnév > filenamenumbered

Ennyi az egész! Használhatja bármelyik trükköt. Több olvasó is megszól alt a megjegyzésekben, hogy egyszerűbb megoldásokat kínáljon a szöveges fájlon belüli sorszámozásra. Ezeket az egyszerűség kedvéért fentebb felsoroltuk, de alább kínálunk egy „awk” megoldást is.

-

Használhatja az „awk” parancssori eszközt is, de az egy kicsit bonyolultabb, mint a fent említett módszerek, ha érdekel, indítsa el a terminált, és már megy is.

Először is biztonsági másolatot készítsen a szövegfájlról, ha valami elromlik (például szintaktikai hiba). Most, hogy biztonsági másolatot készített a szóban forgó szövegfájlról, írjuk be közvetlenül a sorszámokat:

"

awk &39;{printf(%5d : %s\n, NR, $0)}&39; fájlnév > filenamenumbered "

A filename az eredeti fájl, a filenamenumbered pedig az, amit meg akarsz hívni az awk parancs kimenetének sorszámokkal. A kimeneti szöveges dokumentumban most minden sor előtt egy szám és kettőspont szerepel:

1: sor szavakkal 2: sor szavakkal 3: sor szavakkal

Az eredeti szövegfájlnak változatlannak kell lennie, de ha szintaktikai hibát vétett, akkor az elkészített biztonsági másolat megmenti a napját. Ez a parancs minden olyan Unix operációs rendszerben működik, amelyik rendelkezik awk támogatással, ezért nyugodtan futtassa ezt a parancsot FreeBSD, Linux, Mac OS X vagy bármilyen más változatban, amelyre csak gondol.

Egyszerűen adjon hozzá sorszámokat egy szöveges fájlhoz a parancssor segítségével