كيفية التعامل مع تمرير أسماء الملفات باستخدام مسافات في Bash



جرب أداة القضاء على المشاكل

يحتوي نظام Linux على shell الافتراضي Bash (المعروف أيضًا باسم Bourne مرة أخرى shell) لتنفيذ الأوامر للنظام. يفضل معظم المبرمجين bash على cmd بسبب المرونة وقوة مترجم سطر الأوامر الذي يوفره bash. ومع ذلك ، سيظل معظم المستخدمين يواجهون مشكلات أثناء محاولتهم التعامل مع تمرير أسماء الملفات بمسافات في bash. هذا لأن المسافات لا تعتبر هي نفسها في bash كما هي في أسماء الملفات.



ملفات بها مسافات في الاسم



لماذا لا يتعرف Bash على اسم الملف الذي يحتوي على مسافات؟

في Bash ، إذا كتبت عدة كلمات بدون هرب حرف () أو الاقتباسات ، ستعتبر كل الكلمات بمثابة حجج. ينطبق هذا على جميع العمليات ، سواء كنت تقوم بتغيير الدليل بـ ' قرص مضغوط 'أو محاولة الوصول إلى الملفات باستخدام' قط الأوامر. سيتم اعتبار أي شيء تكتبه بعد استخدام هذه الحجة. فمثلا:



اسم ملف cat.txt

تشغيل الأمر بدون استخدام حرف الهروب أو الاقتباسات

ملحوظة : يمكن أن يكون اسم الملف الخاص بك أي شيء ولكن بالنسبة لهذه المقالة ، سنستخدم ' اسم الملف. txt ' كمثال.

هنا ' قط سيأخذ الأمر بعين الاعتبار ملف و اسم كحجتين وليس حجة واحدة. ومع ذلك ، إذا كنت تستخدم حرف الهروب أو الاقتباسات ، فستعتبر bash shell ذلك كوسيطة واحدة ، والتي ستكون ' اسم الملف. txt '.



اسم الملف مع المسافات في Bash

هناك طرق قليلة يمكن استخدامها للمسافات في الاسم. أفضل ممارسة هي تجنب المسافات لأسماء الملفات في المستقبل. تتمثل إحدى الطرق البسيطة في إعادة تسمية الملف الذي تحاول الوصول إليه وإزالة المسافات. تستخدم بعض الطرق الأخرى اقتباسات مفردة أو مزدوجة على اسم الملف بمسافات أو تستخدم رمز الهروب () قبل الفراغ مباشرة. سنوفر طرقًا مع أمثلة تطبيقية لتوضيح كيفية عملها.

الطريقة الأولى: استخدام الاقتباسات الفردية والمزدوجة

  1. معلق Ctrl + Alt مفاتيح واضغط تي لفتح طرفية .
  2. الآن قم بتغيير الدليل إلى حيث يوجد الملف.
    (يمكنك أيضا سحب و قطرة الملف في المحطة بعد الأمر ' قط '، والتي ستضع الاقتباسات تلقائيًا في مسار / دليل الملف)

    سطح المكتب cd

    تغيير الدليل

    ملحوظة : يمكن تغيير سطح المكتب إلى الموقع الذي تحاول الوصول إليه.

  3. اكتب الأمر التالي لقراءة ملف نصي به مسافات في الاسم:
    القط 'اسم ملف. xt'

    أو

    القط 'اسم ملف. xt'

    استخدام الاقتباسات لتجنب المسافات في خطأ الاسم

  4. سينتج عن الاقتباسات المفردة والمزدوجة نفس الشيء. في بعض الحالات ، تحتاج إلى تجربة كليهما ومعرفة أيهما يعمل.

الطريقة 2: استخدام حرف الهروب من رد الفعل العكسي

  1. معلق Ctrl + Alt مفاتيح واضغط تي لفتح طرفية .
  2. قم بتغيير الدليل إلى حيث يوجد الملف باستخدام الأمر التالي.
    سطح المكتب cd

    ملحوظة : ضع اسم موقعك في مكان سطح المكتب.

  3. الآن اكتب الأمر واستخدمه هرب حرف في أي مكان توجد مساحة في الاسم:
    ملف القط  name.txt

    استخدام حرف الهروب لتجنب خطأ المسافات

المكافأة: استخدام الاقتباسات والهروب

في بعض الأحيان ، عندما تستخدم الدليل في الأمر ، قد تكون هناك عواقب لاستخدام الاقتباسات في المسار العام. هذا لأن بعض الأوامر مثل م 'أو' cp سوف ينظر في المسار على أنه مصدر الملف إذا تم استخدام الاقتباس ككل. تحتاج إلى تقديم عروض الأسعار لكليهما مصدر و المكان المقصود بشكل فردي بحيث تكون الأوامر مثل cp يمكن أن تعمل بشكل صحيح. يمكنك أيضًا التحقق من المثال أدناه الذي سيوضح لك أن استخدام حرف الهروب للمسار أكثر تعقيدًا ويمكن للمستخدمين أن يخطئوا فيه.

الفرق بين الاقتباسات وحرف الهروب

2 دقيقة للقراءة