ווי צו ווייַזן אַ טעקע ס פּרינטאַבאַל טשאַראַקטער מיט די סטרינגס קאַמאַנד

האָבן איר אלץ געפרוווט צו עפענען אַ טעקע אין אַ רעדאַקטאָר בלויז צו געפינען אויס אַז עס כּולל אַנרידאַבאַל ביינערי צופרידן?

די לינוקס "סטרינגס" באַפֿעל מאכט עס מעגלעך צו זען די מענטשלעך-לייאַבאַל אותיות אין קיין טעקע.

דער הויפּט ציל פון ניצן די "סטרינגס" באַפֿעלן איז צו אַרבעטן אויס וואָס טיפּ פון טעקע עס איז איר זוכט אין אָבער איר קענען אויך נוצן עס צו עקסטראַקט טעקסט. פֿאַר בייַשפּיל, אויב איר האָבן אַ טעקע פון ​​אַ פּראַפּרייאַטערי פּראָגראַם אַז סאַוועס טעקעס אין אַ מאָדנע ביינערי פֿאָרמאַט איר קענען נוצן "סטרינגס" צו עקסטראַקט דעם טעקסט איר שטעלן אין די טעקע.

בייַשפּיל יוסידזש פון די סטרינגס קאַמאַנד

א גרויס וועג צו באַווייזן די מאַכט פון די סטרינגס באַפֿעלן איז צו שאַפֿן אַ דאָקומענט ניצן LibreOffice Writer.

פשוט עפענען LibreOffice Writer און אַרייַן עטלעכע טעקסט און דעמאָלט ראַטעווען עס אין די נאָרמאַל אָדט פֿאָרמאַט .

איצט עפענען אַ וואָקזאַל פֿענצטער (דריקן קטרל, אַלט און ה אין די זעלבע צייַט) און דעמאָלט נוצן די קאַץ באַפֿעל צו ווייַזן די טעקע ווי גייט:

קאַץ yourfilename.odt | מער

(רעפּלאַסע די yourfilename.odt מיט די נאָמען פון די טעקע איר באשאפן)

וואָס איר וועט זען איז אַ גאַנץ וואַנט פון ומלעגאַל טעקסט.

דרוק די ספּאַסעבאַר צו מעגילע דורך די טעקע. ספּאָראַדיקאַללי איבער די טעקע איר וועט זען עטלעכע פון ​​די טעקסט איר האָבן אריין.

די סטרינגס באַפֿעל קענען ווערן גענוצט צו אַרויסווייַזן נאָר די פּאַרץ וואָס זענען מענטשלעך ליינעוודיק.

אין זייַן סימפּלאַסט פאָרעם איר קענען לויפן די פאלגענדע באַפֿעל:

strings yourfilename.odt | מער

ווי איידער, אַ וואַנט פון טעקסט וועט דערשייַנען, אָבער בלויז טעקסט וואָס איר קענען לייענען ווי אַ מענטש. אויב איר זענט מאַזלדיק, איר קענען זען דיין טעקסט.

וואָס איר וועט קענען צו זען אַז איז שליסל, אָבער, איז אויף דער ערשטער שורה:

mimetypeapplication / vnd.oasis.opendocument.text

מיר וויסן אַז דער טעקע טיפּ איז אַ LibreOffice Writer ODT טעקע פֿאַר 2 סיבות:

  1. מיר באשאפן די טעקע
  2. די געשפּרייט איז .ODT

ימאַגינע אַז איר האט נישט מאַכן דעם טעקע אָדער איר געפונען די טעקע אויף אַ ריקאַווערד דיסק און די טעקע האט נישט האָבן אַ פאַרלענגערונג.

פֿענצטער אָפּזוך וואָלט אָפט צוריקקריגן טעקעס מיט נעמען ווי 0001, 0002, 0003 אאז"וו די פאַקט אַז די טעקעס זענען ריקאַווערד איז גרויס אָבער טריינג צו אַרבעט אויס וואָס די טייפּס פון די טעקעס זענען געווען אַ נייטמער.

ניצן סטרינגס איר האָבן אַ פייטינג געלעגנהייַט פון ארבעטן אויס די טעקע טיפּ. ווייל אַ טעקע איז אַ אָפּענדאָקומענט.טעקסט טעקע מיטל איר קענען ראַטעווען עס מיט די אָדט פאַרלענגערונג און עפענען עס אין LibreOffice writer.

אין פאַל איר געווען ניט וויסנדיק אַ אָדט טעקע איז בייסיקלי אַ קאַמפּרעסט טעקע. אויב איר רענאַמע yourfilename.odt צו yourfilename.zip איר קענען עפענען עס אין אַן אַרטשיווינג געצייַג און אַפֿילו אַנזיפּ דער טעקע.

Alternative Behaviors

דורך פעליקייַט די סטרינגס באַפֿעל קערט אַלע סטרינגס ין אַ טעקע, אָבער איר קענען באַשטימען דעם אָפּפירונג אַזוי אַז עס קערט שטריקל פון ינישיייטיד, לאָודיד דאַטע סעקשאַנז אין אַ טעקע.

וואָס טוט דאָס מיינען פּונקט? קיינער מיינט צו וויסן.

עס מאכט זינען צו יבערנעמען אַז איר זענען ניצן סטרינגס צו פּרובירן און געפֿינען די טעקע טיפּ אָדער צו קוקן פֿאַר ספּעציפיש טעקסט אין אַ טעקע.

אויב ווען פליסנדיק די סטרינגס באַפֿעל ניצן די פעליקייַט אָפּפירונג איר טאָן ניט באַקומען די פּראָדוקציע איר זענען כאָופּינג פֿאַר דעמאָלט פּרובירן פליסנדיק איינער פון די פאלגענדע קאַמאַנדז צו זען אויב עס מאכט אַ חילוק:

strings -d yourfilename

strings - דאַטע פון ​​דיין טעקע

די מאַנואַל בלאַט שטייכט אַז די אויבן באַפֿעל קען העלפן צו רעדוצירן די סומע פון ​​מיסט אומגעקערט פון סטרינגס.

די "סטרינגס" באַפֿעל קענען זיין שטעלן אַרויף צו אַרבעטן אין פאַרקערט אַזוי אַז די מינוס די באַשטימען איז די פעליקייַט אָפּפירונג. אויב דאָס איז דער פאַל אויף דיין סיסטעם, איר קענען צוריקקומען אַלע די דאַטן ניצן די ווייַטערדיק באַפֿעל:

strings -a yourfilename

פאָרמאַטטינג אָוטפּוט

איר קענען באַקומען די טעקסט אין דער רעזולטאַט צו אַרויסווייַזן די נאָמען פון די טעקע צוזאמען יעדער שורה פון טעקסט.

צו טאָן דעם לויפן איינער פון די פאלגענדע קאַמאַנדז:

strings -f yourfilename

strings --print-file-name אירפילענאַמע

דער רעזולטאַט וועט איצט קוקן עפּעס ווי דאָס:

yourfilename: אַ שטיק פון טעקסט

yourfilename: אן אנדער שטיק פון טעקסט

ווי טייל פון דער רעזולטאַט איר קענען אויך אַרויסווייַזן די פאָטאָ פון וואָס דער טעקסט איז אין אַ טעקע. צו טאָן אַזוי לויפן די פאלגענדע באַפֿעל:

strings -o yourfilename

דער רעזולטאַט וועט קוקן עפּעס ווי דאָס:

16573 your

17024 טעקסט

דער אָפּזעצונג איז פאקטיש דער אָקטאַל אָפסעט כאָטש דיפּענדינג אויף ווי סטרינגס איז געווען צונויפגעשטעלט פֿאַר דיין סיסטעם עס קען לייכט זיין די העקס אָדער די דעצימאַל אָפסעט ווי געזונט.

א מער פּינטלעך וועג פון געטינג די פאָטאָ איר ווילן איז צו נוצן די פאלגענדע קאַמאַנדז:

strings -d yourfilename

strings -to yourfilename

strings-טהאָפילענאַמע

די מינוס ה מיטל צוריקקומען די אָפסעט און דער כאַראַקטער וואָס גייט דיטערמאַנז די אָפסעט טיפּ. (ד"ה ד = דעצימאַל, אָ = אָקטאַל, ה = העקס).

דורך פעליקייַט די שטריקל באַפֿעל פּרינץ יעדער נייַ שטריקל אויף אַ נייַ שורה אָבער איר קענען שטעלן די דעלימיטער פון דיין ברירה. למשל צו נוצן אַ רער סימבאָל ("|") ווי די דעלימיטער לויפן די פאלגענדע באַפֿעל:

strings -s "|" yourfilename

סטרויערן די שטריקל לימיט

די סטרינגס באַפֿעלן דורך פעליקייַט קוקט פֿאַר אַ שטריקל פון 4 פּרינטאַבאַל אותיות אין אַ רודערן. איר קענען סטרויערן די פעליקייַט אַזוי אַז עס קריייץ אַ שטריקל מיט 8 פּרינטאַבאַל אותיות אָדער 12 פּרינטאַבאַל אותיות.

דורך סטרויערן דעם שיעור איר קענען שנייַדן די רעזולטאַט צו באַקומען די בעסטער מעגלעך רעזולטאַט. דורך קוקן פֿאַר אַ שטריקל אַז איז אויך לאַנג איר ריזיקירן אָומיטינג נוציק טעקסט אָבער דורך מאכן עס אויך קורץ איר זאל סוף אַרויף מיט פיל מער אָפּפאַל אומגעקערט.

צו סטרויערן די שטריקל שיעור לויפן די פאלגענדע באַפֿעל:

strings -n 8 yourfilename

אין די אויבן בייַשפּיל איך האָבן געביטן דעם שיעור צו 8.

איר קענען פאַרבייַטן 8 מיט די נומער פון דיין ברירה.

איר קענען אויך נוצן די פאלגענדע באַפֿעל צו טאָן די זעלבע זאַך:

strings --bytes = 8 אייַערע טעקע

אַרייַננעמען ווהיטעספּאַסע

דורך פעליקייַט, די סטרינגס באַפֿעל כולל ווהיטעספּאַסע אַזאַ ווי אַ קוויטל אָדער פּלאַץ ווי אַ פּרינטאַבאַל כאַראַקטער. דעריבער אויב איר האָבן אַ שטריקל וואָס לייענט ווי "די קאַץ געזעסן אויף די מאַטע" דעמאָלט די סטרינגס באַפֿעל וואָלט צוריקקומען די גאנצע טעקסט.

ניו שורה אותיות און וועגעלע רעטורנס זענען נישט גערעכנט פֿאַר פּרינטאַבאַל אותיות דורך פעליקייַט.

צו באַקומען סטרינגס צו דערקענען נייַ שורה אותיות און וועגעלע רעטורנס ווי אַ פּרינטאַבאַל כאַראַקטער לויפן סטרינגס אין די פאלגענדע וועג:

strings -w yourfilename

טוישן די קאָדירונג

עס זענען 5 קאָדירונג אָפּציעס בנימצא פֿאַר נוצן מיט סטרינגס:

די פעליקייַט איז 7 ביסל בייט.

צו טוישן די קאָדירונג לויפן די פאלגענדע באַפֿעל:

strings -es yourfilename

strings - ענקאָדיאָנ = s דיין טעקע נאָמען

אין די אויבן באַפֿעל, איך האָבן ספּעסאַפייד די פעליקייַט "s" וואָס מיטל 7 ביסל ביטע. פשוט פאַרבייַטן די "s" מיט די קאָדירונג פון דיין ברירה.

טוישן די ביינערי טעקע באַשרייַבונג נאָמען

איר קענען טוישן די נאַטור פון סטרינגס אַזוי אַז עס ניצט אַ אַנדערש ביינערי טעקע דעסקריפּטאָר ביבליאָטעק אנדערע ווי די איינער צוגעשטעלט פֿאַר דיין סיסטעם.

דעם באַשטימען איז איינער פֿאַר די עקספּערץ. אויב איר האָבן אן אנדער ביבליאָטעק צו נוצן, איר קענען טאָן אַזוי דורך פליסנדיק די ווייַטערדיק סטרינגס באַפֿעל:

strings -T bfdname

לייענען אָפּציעס פֿון א טעקע

אויב איר זענען געגאנגען צו נוצן די זעלבע אָפּציעס יעדער מאָל, איר טאָן ניט ווילן צו ספּעציפיצירן אַלע די סוויטשיז ווען איר לויפן דעם באַפֿעל ווייַל עס נעמט צייַט.

וואָס איר קענען טאָן איז שאַפֿן אַ טעקסט טעקע ניצן נאַנאָ און ספּעציפיצירן די אָפּציעס אין דעם טעקע.

צו פּרובירן דעם אויס אין אַ וואָקזאַל לויפן די פאלגענדע באַפֿעל:

nano stringsopts

אין דער טעקע אַרייַן די פאלגענדע טעקסט:

-f -o -n 3 -s "|"

היט די טעקע דורך דרינגלעך קטרל און אָ און אַרויסגאַנג דורך דרינגלעך קטרל און רענטגענ.

צו לויפן די סטרינגס קאַמאַנדז מיט די אָפּציעס לויפן די ווייַטערדיק באַפֿעל:

stringsopts yourfilename

די אָפּציעס וועט זיין לייענען פון די טעקע סטרינגסאַפּץ און איר זאָל זען די פילענאַמע איידער יעדער שטריקל, די פאָטאָ און די "|" ווי אַ סעפּאַראַטאָר.

באַקומען הילף

אויב איר ווילט לייענען מער וועגן סטרינגס איר קענען לויפן די פאלגענדע באַפֿעל צו באַקומען הילף.

strings --help

אַלטערנאַטיוועלי איר קענען אויך לייענען די מאַנואַל בלאַט:

מענטש סטרינגס

געפֿינען אויס וואָס ווערסיע פון ​​סטרינגס איר זענען פליסנדיק

צו געפֿינען די ווערסיע פון ​​סטרינגס איר זענען פליסנדיק לויפן איינער פון די פאלגענדע קאַמאַנדז:

strings -v

strings -V

strings --version