שינוי שם ביוניקס (freeNAS) עם wildcard

פורום רשתות, IT ומחשוב כללי - רשתות, ראוטרים, מחשבים ניידים, אביזרים וכו'.
שלח תגובה
mrunderhill פותח השרשור
סמל אישי של משתמש
חבר ותיק
חבר ותיק
תגובות: 2261
הצטרף: מרץ 2009
נתן תודות: 74 פעמים
קיבל תודות: 124 פעמים

שליחה #1 

אני רוצה לשנות שמות של קבצים מרובים בשרת - מדובר בספריה שיש בה סדרה, ולצערי בשמות הקבצים מופיע רק שם ומס׳ הפרק, בלי מספר עונה (זה שם התיקיה). כמובן שרוב האגרגטורים לא יודעים להתמודד עם זה ומצפים לקובץ בשם SXXEXX. המבנה של הקבצים הוא ככה:
Bla Bla E01 Episode name
Bla Bla E02 Episode name
וכו
לכן למעשה אני צריך להחליף את הBLA BLA בS01 S02 וכו. אני אעשה את זה ידנית לכל ספריה (לא צריך לעשות את השינוי מבוסס על שם הספריה), אבל אני קצת מסתבך עם הפקודה. יש למישהו עצה?

שלגון
חבר ותיק
חבר ותיק
תגובות: 2768
הצטרף: נובמבר 2005
נתן תודות: 480 פעמים
קיבל תודות: 699 פעמים

שליחה #2 

שתי אפשרויות:
1. תלמד איך לעשות את זה מ- telnet/ssh. רמז: man mv
2. תמפה את התיקיה במחשב שמריץ חלונות (ותדאג שיהיו הרשאות לכתיבה) ומשם אתה מסודר.
ואין לך "געוואלד געצרוכען"
שאין לו את ה-"פארפאלן" שלו...

mrunderhill פותח השרשור
סמל אישי של משתמש
חבר ותיק
חבר ותיק
תגובות: 2261
הצטרף: מרץ 2009
נתן תודות: 74 פעמים
קיבל תודות: 124 פעמים

שליחה #3 

יש לי מן הסתם shell וידע בסיסי ביוניקס. הפעולה הזו ספציפית גדולה עלי. ניסיתי משחקי mv ולא הצלחתי.
המחשב השני שלי בבית הוא מק (לצערי..),ולכן גם ממנו אני לא יכול - מעבר לשינויים ידניים אחד אחד.

שלגון
חבר ותיק
חבר ותיק
תגובות: 2768
הצטרף: נובמבר 2005
נתן תודות: 480 פעמים
קיבל תודות: 699 פעמים

שליחה #4 

mrunderhill כתב:יש לי מן הסתם shell וידע בסיסי ביוניקס. הפעולה הזו ספציפית גדולה עלי. ניסיתי משחקי mv ולא הצלחתי.
המחשב השני שלי בבית הוא מק (לצערי..),ולכן גם ממנו אני לא יכול - מעבר לשינויים ידניים אחד אחד.
...
מסתבר שאתה ואני מבינים את המושג ידע בסיסי באופן שונה. תקרא את פרקים 3.3 ו- 3.4 פה: http://linux.die.net/Intro-Linux/
אין לי, מן הסתם, מושג מה אתה יודע או לא. גם אין לי מושג איזה פקודות ניסית ומה הודעות השגיאה שקיבלת. היה עוזר אם היית מפרט קצת יותר.

עריכה: זה אם אתה רוצה לשנות את השמות של הקבצים אחד. לשנות שמות של מספר קבצים במכה אחת זה "קצת" יותר מסובך. צריך script קטן (אפשר מ- command line): לולאה שעוברת על כל הקבצים, לבנות את שם הקובץ החדש עם sed או awk.
ואין לך "געוואלד געצרוכען"
שאין לו את ה-"פארפאלן" שלו...

ilane
חבר פעיל במיוחד
חבר פעיל במיוחד
תגובות: 614
הצטרף: אפריל 2006
נתן תודות: 10 פעמים
קיבל תודות: 137 פעמים

שליחה #5 

זה לא כל כך פשוט, יש יותר מאפשרות אחת לצורה שכותבים את שם הקובץ
יש תוכנות שמיועדות לזה למשל:
http://therenamer.com/
או
http://www.bulkrenameutility.co.uk/

שתיהן מיועדות לוינדוס, אבל יכול להיות שיש להן מקבילות.

mrunderhill פותח השרשור
סמל אישי של משתמש
חבר ותיק
חבר ותיק
תגובות: 2261
הצטרף: מרץ 2009
נתן תודות: 74 פעמים
קיבל תודות: 124 פעמים

שליחה #6 

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

שלגון
חבר ותיק
חבר ותיק
תגובות: 2768
הצטרף: נובמבר 2005
נתן תודות: 480 פעמים
קיבל תודות: 699 פעמים

שליחה #7 

אתה יכול לפרט קצת יותר מה השרת הזה מריץ? זה server שרץ על PC ומריץ איזה distro של לינוקס או אחד מה- NAS-ים הקטנים האלה.

בקיצור, מה אתה מקבל כשאתה מריץ uname -a.
ואין לך "געוואלד געצרוכען"
שאין לו את ה-"פארפאלן" שלו...

mrunderhill פותח השרשור
סמל אישי של משתמש
חבר ותיק
חבר ותיק
תגובות: 2261
הצטרף: מרץ 2009
נתן תודות: 74 פעמים
קיבל תודות: 124 פעמים

שליחה #8 

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

שלגון
חבר ותיק
חבר ותיק
תגובות: 2768
הצטרף: נובמבר 2005
נתן תודות: 480 פעמים
קיבל תודות: 699 פעמים

שליחה #9 

אוקיי, זה לא איזה ulinux עם busybox. זה עושה את החיים יותר פשוטים.
יכול להיות שיש לך utility שנקרא rename (הפקודה: which rename) ותלמד קצת ביטויים רגולריים.
יש אפשרות לעשות את זה עם midnight commander. גם זה יצריך לימוד של ביטויים רגולריים.
יש גם סקריפטים של bash שאפשר למצוא ברשת שיעשו את העבודה, כנראה (לא בדקתי).
ואין לך "געוואלד געצרוכען"
שאין לו את ה-"פארפאלן" שלו...

mrunderhill פותח השרשור
סמל אישי של משתמש
חבר ותיק
חבר ותיק
תגובות: 2261
הצטרף: מרץ 2009
נתן תודות: 74 פעמים
קיבל תודות: 124 פעמים

שליחה #10 

בדיוק - REGEX זה מה שאני חיפשתי. האמת שהייתי נעול כ"כ על להריץ את זה ישירות מהשרת, אבל באותה מידה אני יכול להריץ את זה מהמק, ושם יש מבחר גדול יותר של פקודות יוניקס

שלח תגובה

חזור אל “רשתות, אינטרנט ו- Fiber”