logo

פקודה cp ב-Linux/Unix | העתקת קובץ לינוקס

'cp' פירושו העתקה. הפקודה 'cp' משמשת להעתקת קובץ או ספריה.

מבוא ל-cp Command

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

יתר על כן, כלי השירות מקבל מספר דגלים של אפשרויות שורת פקודה לפירוט הפעולות המיושמות. שני המפרטים העיקריים הם GNU cp ו-POSIX cp. GNU cp מכיל אפשרויות נוספות שונות בגרסת POSIX. כמו כן, הפקודה זמינה בתוך מעטפת EFI.

מצבי הפעלה של פקודת cp

הפקודה cp מכילה שלושה מצבי פעולה עיקריים. מצבים אלה מושלמים מהספירה וסוג הטיעונים המוצגים לתוכנית המופעלת.

string.מכיל java
  • התוכנית יכולה להעתיק את תוכן הקובץ הראשון לקובץ השני, מה שהופך את הקובץ השני לחיוני כאשר התוכנה מכילה שני ארגומנטים של שם נתיב לקבצים.
  • התוכנה יכולה להעתיק את כל קבצי המקור לספרייה הרצויה, מה שהופך כל קובץ שאינו זמין כבר כאשר התוכנה מכילה ארגומנט אחד או יותר של שם נתיב של קבצים ולרדוף אחר אלה כארגומנט נתיב לספריה.
  • הפקודה cp יכולה להעתיק כל קובץ בתוך ספריית המקור לספרייה הרצויה, ולהפוך את כל הספריות או הקבצים הנדרשים כאשר הארגומנטים של התוכנית הם שמות הנתיבים של שתי ספריות. מצב פעולה זה זקוק לדגל אפשרות נוספת כדי לייצג את ההעתקה של הספרייה הרקורסיבית. המקור יועתק אל היעד, בעוד ספרייה חדשה נוצרת אם היעד לא קיים אם ספריית היעד כבר זמינה.

אפשרויות של cp Command

אוֹפְּצִיָה תיאור
--ארכיון, -א זה שווה ערך ל-dR --preserve=all.
--מאפיינים בלבד זה לא מעתיק את הנתונים של הקובץ, רק את התכונות.
זה כמו גיבוי אבל לא מקבל שום טיעון.
--גיבוי[=CONTROL] זה עושה גיבוי של כל קבצי היעד הקיימים.
--העתק-תוכן כאשר רקורסיבי, הוא מעתיק תוכן קובץ מיוחד.
זה שווה ערך ל --no-dereference --preserve=קישורים.
--כוח, -ו אם לא ניתן לפתוח קובץ יעד קיים כלשהו, ​​מחק אותו ונסה שוב (אפשרות זו נמנעת אם נעשה שימוש גם בדגל -n).
--אינטראקטיבי, -i הוא מבקש אישור לפני ההחלפה (עוקף את דגל -n הקודם).
ב-SOURCE, הוא עוקב אחר הקישורים הסמליים של שורת הפקודה.
--קישור, -ל זה מציין קבצי קישור קשיח במקום העתקה.
--התייחסות, -L ב-SOURCE, הוא תמיד עוקב אחר קישורים סמליים.
--לא-קלובר, -נ זה לא מחליף שום קובץ קיים (עוקף את דגל -i).
--אין-התייחסות, -פ ב-SOURCE, הוא אף פעם לא עוקב אחר קישורים סמליים.
-עמ' זה שווה ערך ל--preserve=mode, חותמות זמן, בעלות.
--שמר[=ATTR_LIST] זה שומר על התכונות המתוארות. אם אפשר תכונות נוספות: הכל, xattr, קישורים, הקשר.
--no-preserve=ATTR_LIST זה לא שומר על התכונות המתוארות.
--הורים מתחת לספרייה, הוא משתמש בשם המלא של קובץ המקור.
--רקורסיבי, -ר, -ר זה מעתיק באופן רקורסיבי ספריות.
--reflink[=WHEN] זה שולט בעותקי פרה/שיבוט.
--הסר-יעד זה מסיר את כל קבצי היעד הקיימים לפני שמנסה לפתוח אותם (בניגוד ל--force).
--דליל=מתי הוא שולט בהקמת קבצים דלילים.
--מחרוזות-נגרר-מלכסות זה מסיר את הלוכסים הנגררים מכל הארגומנטים של SOURCE.
--סימבולי-קישור, -ס זה יוצר קישורים סמליים במקום העתקה.
--suffix=SUFFIX, -S זה עוקף את סיומת הגיבוי הנפוצה.
--target-directory=DIRECTORY, -t זה מעתיק כל ארגומנט SOURCE ל-DIRECTORY.
--no-target-directory, -T הוא מחשיב את DEST כקובץ כללי.
--עדכון, -u הוא מעתיק אם קובץ ה-SOURCE חדש יותר בהשוואה לקובץ היעד או אם קובץ היעד לא צוין.
--מילולית, -v זה מפרט מה נעשה.
--מערכת קבצים אחת, -x זה נשאר במערכת הקבצים.
-עם זה מגדיר את הקשר האבטחה SELinux של קובץ היעד לסוג ברירת המחדל.
--הקשר[=CTX] זה זהה ל-Z, או אם מוזכר CTX, הוא מגדיר את הקשר האבטחה SMACK או SELinux ל-CTX.
--עֶזרָה זה מציג את תפריט העזרה ויוצא.
--גִרְסָה הוא מספק פרטי גרסה ויציאות.

קבצי ה-SOURCE הדלילים נמצאים על ידי היוריסטיקה זולה, וקובץ ה-DESR הקשור נוצר בדלילות כברירת מחדל. זו ההתנהגות שנבחרה על ידי --sparse=אוטומטי . אנחנו יכולים לתאר --דליל=תמיד ליצור קובץ DEST דל אם קובץ ה-SOURCE כולל סדר ארוך מספיק של אפס בתים. אנחנו יכולים גם להגיש בקשה --דליל=אף פעם כדי להגביל הקמת תיקים דלילים.

אם --reflink[=תמיד] מוזכר, ליישם עותק קל משקל, שבו גושי הנתונים הועתקו רק אם השתנו. אם זה לא אפשרי או --reflink=אוטומטי מוזכר, העותק נכשל ונופל בחזרה לעותק הסטנדרטי. אנחנו יכולים גם להגיש בקשה --reflink=לעולם לא כדי להבטיח עותק סטנדרטי מיושם.

כדי להעתיק קובץ לאותו ספרייה תחביר יהיה,

 cp 

קובץ לינוקס cp

בתמונת המצב לעיל, יצרנו עותק של 'דוקו' וקרא לזה בשם 'חָדָשׁ' . אם במקרה, (במקרה שלנו זה 'newdocu') כבר קיים, אז הוא פשוט יכתוב את הקובץ הקודם.

להעתקת קובץ בספרייה אחרת

עלינו לציין את הנתיב של ספריית היעד.

בתמונה למטה, קודם לכן אין קובץ 'טקסט'. לאחר מתן הפקודה, 'טֶקסט' הקובץ הועתק לספריית היעד כלומר 'שולחן עבודה' .

קובץ לינוקס cp

Linux cp -r

אוֹפְּצִיָה 'ר' עם פקודת העתק ניתן להשתמש כדי להעתיק ספרייה כולל כל התוכן שלה מספריית מקור לספריית היעד.

תחביר:

 cp -r 

דוגמא:

 cp -r library /home/sssit/Documents 

linux cp -r

בדוגמה לעיל, העתקנו ספרייה 'סִפְרִיָה' לספריית היעד /home/sssit/מסמכים . כאן, כל התוכן של ספריית 'ספרייה' כולל התוכן שלה הועתק לספריית היעד.

העתקת לינוקס מרובים קבצים או ספריות

ניתן להעתיק מספר קבצים או ספריות לספריית יעד בבת אחת. במקרה זה, המטרה חייבת להיות ספרייה. כדי להעתיק מספר קבצים אתה יכול להשתמש תווים כלליים (cp *.extension) בעל אותו דפוס.

json מאובייקט Java

תחביר:

 cp *. 

דוגמא:

 cp *.txt /home/sssit/Documents 

לינוקס העתק מספר קבצים

בדוגמה לעיל, העתקנו קבצים (קובץ1, קובץ2, קובץ3) בעלי אותה סיומת '.טקסט' לספריית המסמכים.

Linux cp --גיבוי

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

תחביר:

 cp --backup 

דוגמא:

 cp --backup file2.txt /home/sssit/Downloads 

גיבוי קובץ Linux cp

כפי שאתה יכול לראות למעלה, 'file2.txt' כבר קיים בספריית היעד. לפיכך, יצרנו גיבוי של קובץ זה והעתקנו אותו באותה ספרייה (בעל אותו שם).

כעת בספריית היעד שלנו שהיא 'הורדות' יש שני קבצים בעלי אותו שם (כלומר 'file2.txt').

Linux cp -i

אפשרות cp '-i' מאפשרת לך לאשר פעם אחת לפני החלפת הקובץ שלך.

כמה ערים ארה"ב

תחביר:

 cp -i 

דוגמא:

 cp -i file3.txt /home/sssit/Desktop 

Linux cp -i

כפי שאתה יכול לראות, הוא מבקש רשות לכתוב יותר מדי את הקובץ 'file3.txt' מכיוון שקובץ זה כבר קיים בספריית היעד. עכשיו, אתה יכול ללחוץ ו כדי להחליף קובץ ו נ לא לדרוס את הקובץ.

Linux cp -l

אם אתה רוצה ליצור קישור קשיח של קובץ במקום להעתיק את הקובץ הזה, אתה יכול להשתמש באפשרות 'l'.

הערה: ביצירת קישור קשיח של הקובץ, מספר האינודה של שני הקבצים יישאר זהה. בעוד במקרה של העתקה, מספר האינודה משתנה.

תחביר:

 cp -l 

דוגמא:

 cp -l file1.txt usr/ 

קובץ לינוקס cp -l

שימו לב שיצרנו קישור קשיח של הקובץ 'file1.txt' ב 'usr' . מספר האינודי של שני הקבצים זהים.

Linux cp -p

האפשרות cp '-p' משמשת לשימור המאפיינים והתכונות של קובץ. אתה יכול גם לשמור את המאפיינים שנבחרו שאתה רוצה.

תחביר:

 cp -p 

דוגמא:

 cp -p file2.txt usr/ 

Linux cp -p

כעת, אתה יכול להתאים את שני הקבצים (המקורי והמועתק) בתמונה למעלה, לשניהם אותם מאפיינים.

Linux cp -u -v

הפקודה cp -u -v משמשת כאשר ברצונך לוודא שקובץ היעד חסר או אינו קיים.

תחביר:

גבול css
 cp -u -v 

דוגמא:

 cp -u -v docc file1.txt /home/sssit/Downloads/ 

Linux cp -u -v

בתמונה למעלה, אתה יכול לראות שיש שני קבצים 'מִקלַחַת' ו 'file1.txt' . כעת אנו רוצים להעתיק את שני הקבצים הללו בספריית 'הורד'. אבל אנחנו לא יודעים שבספריית 'הורדות' כבר קיים קובץ 'file1.txt'.

נותן את הפקודה 'cp -u -v' יטפל אוטומטית בקובץ שכבר קיים (file1.txt) ולא יכתוב אותו יותר מדי.

פקודה זו שימושית בהעתקת קבצים גדולים.