linux - إعادة توجيه كل المخرجات إلى الملف




5 Answers

تمت كتابة هذا الجزء إلى stderr ، استخدم 2> لإعادة توجيهه. فمثلا:

foo > stdout.txt 2> stderr.txt

أو إذا كنت تريد في نفس الملف:

foo > allout.txt 2>&1

ملاحظة: يعمل هذا في (ba) sh ، تحقق من shell الخاص بك للبناء الصحيح

هذا السؤال لديه بالفعل إجابة هنا:

أعلم أنه في Linux ، لإعادة توجيه الإخراج من الشاشة إلى ملف ، يمكنني إما استخدام > أو tee . ومع ذلك ، لست متأكدًا من سبب استمرار إخراج جزء من الإخراج إلى الشاشة وعدم كتابته إلى الملف.

هل هناك طريقة لإعادة توجيه كل الإخراج إلى الملف؟




للحصول على الإخراج على وحدة التحكم AND في ملف file.txt على سبيل المثال.

make 2>&1 | tee file.txt

ملاحظة: & (في 2>&1 ) يحدد أن 1 ليس اسم ملف ولكن واصف ملف.




قروض ل osexp2003 وجا ...

بدلا من وضع

&>> your_file.log

خلف خط في

crontab -e

أنا أستعمل

#!/bin/bash
exec &>> your_file.log
…

في بداية البرنامج النصي BASH.

ميزة: لديك تعريفات السجل داخل البرنامج النصي الخاص بك. جيد من Git الخ




أمر:

foo >> output.txt 2>&1

إلحاق الملف output.txt ، دون استبدال المحتوى.




استخدم >> لإلحاق:

command >> file




Related