كيفية حفظ إخراج أمر إلى ملف في Bash (ويعرف أيضاً باسم Linux و MacOS Terminal)
عند تشغيل أمر ما في موجه bash ، فإنه عادة ما يقوم بطباعة إخراج هذا الأمر مباشرة إلى الجهاز حتى تتمكن من قراءته على الفور. ولكن يسمح لك bash أيضًا "بإعادة توجيه" إخراج أي أمر ، وحفظه في ملف نصي حتى تتمكن من مراجعة الإخراج لاحقًا..
يعمل هذا في bash على أي نظام تشغيل ، من Linux و MacOS إلى بيئة Windows 10 الخاصة بنظام التشغيل Ubuntu.
الخيار الأول: إعادة توجيه الإخراج إلى ملف فقط
لاستخدام إعادة توجيه bash ، يمكنك تشغيل أمر ، وتحديد >
أو >>
عامل التشغيل ، ثم قم بتوفير مسار الملف الذي تريد إعادة توجيه الإخراج إليه.
-
>
يعيد توجيه إخراج الأمر إلى ملف ، ليحل محل محتويات الملف الموجودة. -
>>
يعيد توجيه إخراج الأمر إلى ملف ، ويضيف الإخراج إلى محتويات الملف الموجودة.
من الناحية الفنية ، هذا يعيد توجيه "stdout" - الإخراج القياسي ، وهو الشاشة إلى ملف.
إليك مثال بسيط. ال ليرة سورية
الأمر يسرد الملفات والمجلدات في الدليل الحالي. وبالتالي. عند تشغيل الأمر التالي, ليرة سورية
سوف قائمة الملفات والمجلدات في الدليل الحالي. ولكنها لن تطبعها إلى الشاشة ، بل ستحفظها في الملف الذي تحدده.
ls> / path / to / file
لا يتعين عليك تحديد المسار إلى ملف موجود. حدد أي مسار صالح وسيؤدي bash إلى إنشاء ملف في ذلك الموقع.
إذا قمت بعرض محتويات الملف ، فسترى ليرة سورية
إخراج الأمر. على سبيل المثال ، قط
أمر يطبع محتويات ملف إلى المحطة:
cat / path / to / file
تذكر
يستبدل المشغل المحتويات الموجودة في الملف بإخراج الأمر. إذا كنت تريد حفظ مخرجات الأوامر المتعددة في ملف واحد ، فستستخدم >
مشغل بدلا من ذلك. على سبيل المثال ، سيضيف الأمر التالي معلومات النظام إلى الملف الذي تحدده:>>
uname -a >> / path / to / file
إذا لم يكن الملف موجودًا بالفعل ، فستقوم bash بإنشاء الملف. بخلاف ذلك ، سيترك bash محتويات الملف الموجودة بمفرده ويضيف المخرجات إلى نهاية الملف.
عند عرض محتويات الملف ، سترى نتائج الأمر الثاني تم إلحاقها بنهاية الملف:
يمكنك تكرار هذه العملية عدة مرات كما تريد الاحتفاظ بإلحاق الإخراج في نهاية الملف.
الخيار الثاني: إخراج الطباعة عادة وإعادة توجيهه إلى ملف
قد لا ترغب في إعادة توجيه الإخراج باستخدام >
أو >>
المشغلين ، لأنك لن ترى إخراج الأمر في الجهاز. هذا ما نقطة الإنطلاق
الأمر هو ل. يقوم الأمر tee بطباعة المدخلات التي يتلقاها على الشاشة و يحفظه في ملف في نفس الوقت.
لتوجيه إخراج الأمر إلى نقطة الإنطلاق
, طباعته على شاشتك وحفظها في ملف ، استخدم البنية التالية:
الأمر | المحملة / المسار / إلى / الملف
هذا سوف يحل محل أي شيء في الملف مع إخراج الأمر ، تماما مثل >
المشغل أو العامل.
لتوجيه إخراج الأمر إلى نقطة الإنطلاق
, الطباعة إلى شاشتك وحفظها في ملف ، ولكن إلحاقها بنهاية الملف:
الأمر | tee -a / path / to / file
سيؤدي ذلك إلى إلحاق الإخراج إلى نهاية الملف ، تمامًا مثل >>
المشغل أو العامل.
يشتمل bash shell على بعض المشغلات الإضافية المتقدمة التي تؤدي وظائف مماثلة. ستكون مفيدة بشكل خاص إذا كنت تكتب نصوص bash. راجع فصل إعادة التوجيه I / O في دليل Bash-Scripting المتقدم للحصول على معلومات أكثر تفصيلاً.