أكثر

جعل ملف GRASS GIS 7 Ubuntu bash يعمل على Windows 7

جعل ملف GRASS GIS 7 Ubuntu bash يعمل على Windows 7


لقد قمت بإنشاء ملف bash هذا (.sh) أثناء العمل على محاكاة عشوائية لتحليل مستجمعات المياه في GRASS GIS 7.0.2RC1 ، والذي يعمل على Ubuntu. عملت بشكل مثالي وحصلت على النتائج الصحيحة.

r.surf.random - إخراج الكتابة = الحد الأدنى للتردد = 0 كحد أقصى = 0 من أجل ((n = 1 ؛ n <21 ؛ n = $ n + 1)) قم بإجراء r.surf.random - الكتابة فوق الإخراج = الأخطاء min = -15 كحد أقصى = 15 r.mapcalc "fixed_terrain = terrain @ exrcs1 + errors @ exrcs1" - Overwrite r.watershed - overwrite height = fixed_terrain @ exrcs1 التراكم = تجميع $ n r.reclass - إدخال الكتابة فوق = تجميع $ n @ إخراج exrcs1 = قواعد استنزاف $ n = C:  المستخدمون  Hynek  exrcs1_reclass_rules r.mapcalc "التردد = استنزاف $ n + التردد" - تم الانتهاء

يستخدم ملف bash قواعد إعادة التصنيف التي تم تعيينها في الملف exrcs1_reclass_rules. وهذا هو بلدي سؤال - كيفية جعل ملف bash هذا يعمل لنظام التشغيل Windows 7 الموجود في GRASS GIS 7.0.2RC1؟ علمت أنه ستكون هناك مشكلة في الدليل الذي يحتوي على ملف قواعد إعادة التصنيف. حاولت تغيير ملف المسار إلىالقواعد = C: المستخدمون Hynek exrcs1_reclass_rulesبدلاً من مسار أوبونتوالقواعد = / home / user / exrcs1_reclass_rules، وتمكن من قراءة هذا الملف ، ولكن بعد ذلك ظهر هذا الخطأ في محطة GRASS:

تحذير: غير قادر على إعادة تسمية الملف الفارغ 'C:  Users  Hynek  Documents  grassdata / utm / exrcs1 / .tmp / unknown / 34012.1' إلى 'C:  Users  Hynek  Documents  grassdata / utm / exrcs1 / cell_misc / Frequency / nul l ': الملف موجود تحذير: غير قادر على إعادة تسمية ملف الخلية' C:  Users  Hynek  Documents  grassdata / utm / exrcs1 / .tmp / unknown / 34012.0 'إلى' C:  Users  Hynek  Documents  grassdata / utm / exrcs1 / fcell / frequency ': الملف موجود

حتى الآن ، أنشأ ملف bash هذا كل الملفات العشرين المطلوبة تراكم و بالوعة النقطية ، لا بأس بها ، لكنها مرغوبة تكرر النقطية صفراء اللون تمامًا وبها قيم صفرية. من الواضح أن هذا خطأ. هل لديك أي فكرة كيف يمكنني إصلاح هذا؟


لذا ، فتحت التذكرة أخيرًا بعد بضع سنوات ، ووجدت الحل. مشكلة إعادة تسمية الملفات الفارغة والخلوية على جانب Windows ، ولا يمكن فعل أي شيء حيال ذلك. لا يمكن القراءة والكتابة على نفس الملف في نفس الوقت.

لذلك ، حل بديل باستخدام g.rename و ز إزالة يستخدم. لقد استخدمت طبقة نقطية جديدة تسمى "freqnew" ، والتي تلخص البيانات النقطية للتصريف ونقطية التردد. بعد ذلك ، تتم إزالة البيانات النقطية للتردد القديم تمامًا ، ويتم إعادة تسمية البيانات النقطية "freqnew" إلى خطوط المسح "التردد" (يلزم الإزالة ، نظرًا لأن إعادة التسمية ستفشل ، لأنه سيظل هناك خطوط المسح "التردد"). مع هذا النهج ، تعمل المحاكاة على النحو المنشود.

r.surf.random - إخراج الكتابة = الحد الأدنى للتردد = 0 كحد أقصى = 0 من أجل ((n = 1 ؛ n <21 ؛ n = $ n + 1)) قم بإجراء r.surf.random - الكتابة فوق الإخراج = الأخطاء min = -15 كحد أقصى = 15 r.mapcalc "fixed_terrain = terrain @ exrcs1 + errors @ exrcs1" - Overwrite r.watershed - overwrite height = fixed_terrain @ exrcs1 التراكم = تجميع $ n r.reclass - إدخال الكتابة فوق = تجميع $ n @ إخراج exrcs1 = قواعد استنزاف $ n = C:  Users  Hynek  exrcs1_reclass_rules r.mapcalc "freqnew = استنزاف $ n + Frequency" - الكتابة فوق g.remove -f type = اسم خطوط المسح = التردد g.rename النقطية = freqnew تردد القيام به

شاهد الفيديو: GRASS GIS Tutorial 2. How Add Shape File in GRASS. GRASS Practical. GIS Tutorial