אנגליתצרפתיתספרדי

Ad


סמל OnWorks

convmv - מקוון בענן

הפעל convmv בספק אירוח חינמי של OnWorks על Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

זוהי הפקודה convmv שניתן להפעיל בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

תָכְנִית:

שֵׁם


convmv - ממיר שמות קבצים מקידוד אחד לאחר

תַקצִיר


convmv [אפשרויות] קובץ(ים) ... ספריות

אפשרויות


-f הַצפָּנָה
ציין את הקידוד הנוכחי של שמות הקבצים שמהם יש להמיר

-t הַצפָּנָה
ציין את הקידוד שאליו יש להמיר את שמות הקבצים

-i מצב אינטראקטיבי (שאל את y/n עבור כל פעולה)

-r לעבור רקורסיבית דרך ספריות

--nfc
קובצי היעד יהיו טופס נורמליזציה C עבור UTF-8 (לינוקס וכו')

--nfd
קבצי היעד יהיו בצורת נורמליזציה D עבור UTF-8 (OS X וכו').

--qfrom , --qto
תהיה יותר שקט לגבי ה"מ" או "אל" של שינוי שם (אם זה מקלקל את הטרמינל שלך
לְמָשָׁל). זה למעשה לא יעשה שום דבר מלבד להחליף כל תו שאינו ASCII
(באופן בייט) עם ? וכל תו בקרה עם * בתדפיס, זה לא משפיע
לשנות את שם הפעולה עצמה.

--exec הפקודה
לבצע את הפקודה הנתונה. עליך לצטט את הפקודה ומספר 1 יוחלף על ידי
הישן, מס' 2 בשם הקובץ החדש. שימוש באפשרות זו יעדי קישור יישארו ללא נגיעה.

דוגמא:

convmv -f latin1 -t utf-8 -r --exec "צריך לשנות את השם של echo #1 ל-#2" נתיב/אל/קבצים

--רשימה
רשום את כל הקידודים הזמינים. כדי לקבל תמיכה עבור קידודים סיניים או יפניים נוספים
התקן את חבילות Perl HanExtra או JIS2K Encode.

--lowmem
לשמור על טביעת זיכרון נמוכה על ידי אי יצירת hash של כל הקבצים. זה משבית את הבדיקה
אם יעדי סימלינקים נמצאים בתת-עץ. מצביעי יעד סימלינקים יומרו
בלי קשר. אם תמיר כמה מאות אלפי או מיליוני קבצים, הזיכרון
השימוש ב-convmv עשוי לגדול די גבוה. אפשרות זו תעזור לך במקרה כזה.

--nosmart
כברירת מחדל, convmv יזהה אם שם קובץ כבר מקודד UTF8 וידלג על זה
קובץ אם יש לבצע המרה מערך תווים כלשהו ל-UTF8. "--nosmart" יהיה
גם לאלץ המרה ל-UTF-8 עבור קבצים כאלה, מה שעלול לגרום ל"קידוד כפול
UTF-8" (ראה סעיף למטה).

--fixdouble
שימוש באפשרות "--fixdouble" convmv ממיר רק קבצים שעדיין יהיו
UTF-8 מקודד לאחר המרה. זה שימושי לתיקון קבצי UTF-8 בקידוד כפול.
כל הקבצים שאינם UTF-8 או שלא יגרמו ל-UTF-8 לאחר ההמרה לא יהיו
נגע. ראה גם את הפרק "כיצד לבטל UTF-8 כפול ..." להלן.

--הערה
באמת צריך לשנות את שם הקבצים. כברירת מחדל, convmv פשוט ידפיס את מה שהוא רוצה
לעשות.

--ניתן לנתח
זוהי אפשרות מתקדמת שאנשים שרוצים לכתוב ממשק ממשק משתמש ימצאו
שימושי (אולי גם כמה אחרים). זה יעשה convmv להדפיס מה זה יעשה ב-
דרך קלה לנתח. העמודה הראשונה מכילה את הפעולה או מידע כלשהו,
העמודה השנייה מכילה בעיקר את הקובץ שיש לשנות ואם מתאים
העמודה השלישית מכילה את הערך שהשתנה. כל עמודה מופרדת ב-\0\n
(nullbyte newline). כל שורה (פעולה אחת) מופרדת ב-\0\0\n (nullbyte nullbyte
שורה חדשה).

--לא-לשמור-מפעמים
שינוי שמות קבצים גורם בדרך כלל לעדכון mtime של ספריית האב. מאז
גרסה 2 convmv כברירת מחדל מאפסת את ה-mtime לערך הישן. אם מערכת הקבצים שלך
תומך ברזולוציה של תת-שנייה החלק התת-שני של ה-atime ו-mtime יאבדו
שכן פרל עדיין לא תומך בזה. עם אפשרות זו אתה יכול להשבית את השימור
של הזמנים.

--החלף
אם הקובץ שאליו ישונה כבר קיים, הוא ייחלף אם
תוכן קובץ אחר שווה.

--לברוח
אפשרות זו תסיר את רצפי הקסם המכוערים של % משמות הקבצים ותהפוך אותם ל
(בתקווה) תווים יפים יותר של 8 סיביות. אחרי --unescape אולי תרצה לעשות ערכת תווים
הֲמָרָה. רצף זה כמו %20 וכו' מופק לפעמים בעת הורדה דרך
http או ftp.

--עֶלִיוֹן , --נמוך יותר
להפוך את שמות הקבצים לאותיות גדולות או קטנות. כאשר הקובץ אינו מקודד ASCII,
convmv מצפה שתוכנס ערכת תווים דרך המתג -f.

--map=קצת-מיפוי נוסף
להחיל כמה מיפוי תווים מותאמים אישית, הנתמכים כרגע הם:

ntfs-sfm(-undo), ntfs-sfu(-undo) למיפוי של תווי ntfs לא חוקיים עבור לינוקס
או לקוחות cifs של Macintosh (ראה MS KB 117258 גם אפשרות הרכבה של mapchars של mount.cifs
ב- Linux).

ntfs-pretty(-undo) למיפוי של תווי ntfs לא חוקיים לדי חוקיים
גרסאות יפניות שלהם.

ראה map_get_newname() פונקציה כיצד להוסיף בקלות מיפויים משלו במידת הצורך. תן לי
דע אם אתה חושב שחסר כאן מיפוי שימושי ב-convmv.

--dotlessi
אכפת לנו מבעיית ה-i/I ללא נקודות. גרסה קטנה של "אני" תהיה גם ללא נקודות
בעוד שגרסה גדולה של "i" תהיה גם מנוקדת. זה נושא לטורקית
ואזרית.

אגב: הנקודה העילית של האות i נוספה בימי הביניים אליה
להבחין בין האות (בכתבי יד) לבין קווים אנכיים סמוכים באותיות כאלה
כמו u, m ו-n. J הוא צורה שונה של i שהופיעה בזמן זה ולאחר מכן
הפך למכתב נפרד.

- עזרה
להדפיס סיכום קצר של האפשרויות הזמינות

--אפשרויות dump
להדפיס רשימה של כל האפשרויות הזמינות

תיאור


convmv נועד לעזור להמיר שם קובץ בודד, עץ ספריות והכלים
קבצים או מערכת קבצים שלמה לתוך קידוד אחר. זה רק ממיר את שמות הקבצים, לא
תוכן הקבצים. תכונה מיוחדת של convmv היא שהיא גם מטפלת
סימלינקים, ממיר גם את מצביע היעד של ה-Symlink למקרה שמיעד ה-Symlink נמצא
המיר גם כן.

כל זה שימושי מאוד כשרוצים לעבור ממקומונים ישנים של 8 סיביות ל-UTF-8
מקומות. אפשר גם להמיר ספריות ל-UTF-8 שכבר חלקן
UTF-8 מקודד. convmv מסוגל לזהות אם קבצים מסוימים מקודדים ב-UTF-8 והוא ידלג
אותם כברירת מחדל. כדי לכבות את החכמה הזו השתמש במתג "--nosmart".

מערכת קבצים בעיות
כמעט לכל מערכות הקבצים של POSIX לא אכפת מהאופן שבו שמות קבצים מקודדים, הנה כמה
חריגים:

HFS + on OS X / דרווין

לינוקס ו(רוב?) מערכות הפעלה אחרות דמויות יוניקס משתמשות בצורת הנורמליזציה C
(NFC) עבור קידוד UTF-8 שלו כברירת מחדל, אך אל תאכוף זאת. דרווין, הבסיס של ה
Macintosh OS אוכפת צורת נורמליזציה D (NFD), שבה כמה תווים מקודדים ב-a
דרך אחרת. ב-OS X לא ניתן ליצור שמות קבצים NFC UTF-8 כי זה כן
נמנע בשכבת מערכת הקבצים. ב-HFS+ שמות קבצים מאוחסנים באופן פנימי ב-UTF-16 ומתי
הומר בחזרה ל-UTF-8, כדי שמערכת ה-BSD הבסיסית תהיה ניתנת לשליטה, נוצר NFD.
לִרְאוֹת http://developer.apple.com/qa/qa2001/qa1173.html למחדלים. אני חושב שזה היה מאוד
רעיון גרוע ושובר דברים רבים תחת OS X אשר מצפים למערכת תואמת POSIX רגילה.
בכל מקום אחר convmv מסוגלת להמיר קבצים מ-NFC ל-NFD או להיפך, מה שעושה
יכולת פעולה הדדית עם מערכות כאלה קלה הרבה יותר.

JFS

אם אנשים מעלים מחיצות JFS עם iocharset=utf8, יש בעיה דומה, כי
JFS נועד לאחסן שמות קבצים באופן פנימי גם ב-UTF-16; זה בגלל ה-JFS של לינוקס
הוא באמת JFS2, שהיה שכתוב של JFS עבור OS/2. מחיצות JFS צריכות להיות תמיד
רכוב עם iocharset=iso8859-1, שהיא גם ברירת המחדל עם הגרעינים האחרונים של 2.6.6. אם
זה לא נעשה, JFS לא מתנהג כמו מערכת קבצים POSIX וזה עלול לקרות
לא ניתן ליצור קבצים מסוימים כלל, למשל שמות קבצים בקידוד ISO-8859-1. רק
כאשר יש צורך בפעולה הדדית עם OS/2 יש להגדיר את iocharset בהתאם לשימוש
charmap מקומי.

NFS4

למרות מערכות קבצים אחרות של POSIX RFC3530 (NFS 4) מחייב את UTF-8 אך גם אומר: "ה
פרופיל nfs4_cs_prep אינו מציין טופס נורמליזציה. עדכון מאוחר יותר של זה
המפרט עשוי לציין צורת נורמליזציה מסוימת." במילים אחרות, אם אתה רוצה
השתמש ב-NFS4 אתה עשוי למצוא את תכונות ההמרה והנורמליזציה של convmv שימושיות למדי.

FAT/VFAT ו NTFS

NTFS ו-VFAT (עבור שמות קבצים ארוכים) משתמשים ב-UTF-16 באופן פנימי כדי לאחסן שמות קבצים. אתה צריך
אין צורך להמיר שמות קבצים אם אתה מעלה אחת ממערכות הקבצים הללו. השתמש מתאים
אפשרויות הרכבה במקום!

איך ל לבטל לְהַכפִּיל UTF-8 (אוֹ אַחֵר) מוצפן שמות קבצים
לפעמים זה עלול לקרות ש"קידוד כפול" שמות קבצים מסוימים, למשל ה
שמות הקבצים כבר היו מקודדים ב-UTF-8 ובטעות ביצעת המרה נוספת מכמה מהם
ערכת תווים ל-UTF-8. אתה יכול פשוט לבטל את זה על ידי המרת זה הפוך. ה
מ-charset חייב להיות UTF-8 וה-to-charset חייב להיות מ-charset שקודם לכן
השתמשו בטעות. אם אתה משתמש באפשרות "--fixdouble" convmv תוודא שרק
יעובדו קבצים שעדיין יהיו מקודדים ב-UTF-8 לאחר ההמרה וכך יהיה
השאר קבצים שאינם UTF-8 ללא נגיעה. עליך לבדוק כדי לקבל את התוצאות הנכונות על ידי ביצוע ה
המרה ללא "--notest" לפני כן, גם האפשרות "--qfrom" עשויה להיות מועילה, כי
שמות הקבצים הכפולים utf-8 עלולים לדפוק את הטרמינל שלך אם הם מודפסים - הם
מכילים לעתים קרובות רצפי בקרה שעושים דברים מצחיקים עם חלון הטרמינל שלך. אם אתה
אינם בטוחים לגבי ערכת התווים שממנה הומרה בטעות, השימוש ב---qfrom הוא a
דרך טובה לקשקש את הקידוד הנדרש מבלי להרוס את שמות הקבצים לבסוף.

איך ל לתקן סמבה קבצים
כאשר ב-smb.conf (של Samba 2.x) לא הוגדרה "קבוצת תווים" נכונה
משתנה, קבצים שנוצרים מלקוחות Win* נוצרים אצל הלקוח
עמוד קוד, למשל cp850 עבור שפות מערב אירופה. כתוצאה מכך הקבצים אשר
מכילים תווים שאינם ASCII הם דפוקים אם אתה "משמש" אותם בשרת Unix. אם אתה
שנה את המשתנה "סט תווים" לאחר מכן ל-iso8859-1, הקבצים החדשים שנוצרו בסדר,
אבל הקבצים הישנים עדיין דפוקים בקידוד Windows. במקרה זה convmv יכול
לשמש גם להמרת הקבצים הישנים משותפים Samba מ-cp850 ל-iso8859-1.

אגב: Samba 3.x ממפה סוף סוף לשמות קבצים UTF-8 כברירת מחדל, כך גם כאשר אתה מעביר
מ-Samba 2 ל-Samba 3 ייתכן שיהיה עליך להמיר את שמות הקבצים שלך.

נטטאלק יכולת פעולה הדדית בעיות
כאשר Netatalk עובר ל-UTF-8 שנתמך בגרסה 2 אז זה לא
מספיק כדי לשנות את שמות הקבצים. צריך לעשות יותר. לִרְאוֹת
http://netatalk.sourceforge.net/2.0/htmldocs/upgrade.html#volumes-and-filenames וה-
תוכנית השירות unconv של Netatalk לפרטים.

השתמש ב-convmv באינטרנט באמצעות שירותי onworks.net


שרתים ותחנות עבודה בחינם

הורד אפליקציות Windows & Linux

פקודות לינוקס

Ad