Avatar ·

كيفية إنشاء مجلد في Go إذا لم يكن موجودًا (mkdir if not exists)

مرحبًا بالجميع! لقد بدأت للتو في تعلم Go وواجهت هذه المشكلة. أحتاج في البرنامج إلى إنشاء دليل لحفظ السجلات، ولكن فقط إذا لم يكن موجودًا بعد. إذا كان المجلد موجودًا بالفعل — فلا داعي لفعل أي شيء، فقط متابعة العمل. المشكلة هي أن الدالة القياسية os.Mkdir() ترجع خطأ إذا كان الدليل موجودًا بالفعل. جربت أولاً التحقق عبر os.Stat() ثم الإنشاء، لكن هذا يبدو وكأنه حل مؤقت. في لغات أخرى (مثل Python) يوجد os.makedirs(exist_ok=True)، وفي PHP يوجد mkdir($path, 0777, true). هل يوجد شيء مشابه في Go؟ هذا هو الكود الحالي الذي يبدو لي غير صحيح: ```go package main import ( "fmt" "os" ) func main() { path := "./logs" if _, err := os.Stat(path); os.IsNotExist(err) { err := os. ```