انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => انجمن عمومی => نویسنده: chandlerbing در 04 دی 1401، 09:55 ب‌ظ

عنوان: ویرایش یک فایل متنی با sed
ارسال شده توسط: chandlerbing در 04 دی 1401، 09:55 ب‌ظ
سلام به همگی . وقتتون بخیر

یه فایل setup یک مدل هیدرودینامیکی دارم که محتواش متنه . میخام این فایلو ویرایش کنم به طوری که هر جای این فایل عبارت "constant_values" بود، عدد جلوش رو در 1.5 ضرب کنه و در فایل در همون موقعیت ذخیره کنه. تو اینترنت گشتم فهمیدم با sed میشه اینکارو انجام داد. اگه کسی دستورای sed رو بلده ممنون میشم کمکم کنه. خودمم تلاش میکنم یادبگیرم اما فعلا زمان خیلی کم دارم.
(https://s2.uupload.ir/files/1_kjjb.png)
عنوان: پاسخ : ویرایش یک فایل متنی با sed
ارسال شده توسط: دانیال بهزادی در 04 دی 1401، 10:19 ب‌ظ
با sed و awk می‌شه. ولی یه مقدار پیچیده است.
می‌تونی یه کدنوشتهٔ bash ساده‌هم بنویسی که خط به خظ بخونه و اگه با constant_value شروع می‌شد،‌عدد جلوش رو با cut دربیاره و مقدارش رو در ۱٫۵ ضرب کنه و بنویسه.
عنوان: پاسخ : ویرایش یک فایل متنی با sed
ارسال شده توسط: chandlerbing در 04 دی 1401، 10:40 ب‌ظ
ممنون
عنوان: پاسخ : ویرایش یک فایل متنی با sed
ارسال شده توسط: esmaeelE در 05 دی 1401، 11:49 ق‌ظ
چنین چیزی کار می‌کنه.

awk '/constant_values =/{ gsub($3, 1.5*$3); print }' file.md
عنوان: پاسخ : ویرایش یک فایل متنی با sed
ارسال شده توسط: chandlerbing در 05 دی 1401، 01:55 ب‌ظ
چنین چیزی کار می‌کنه.

awk '/constant_values =/{ gsub($3, 1.5*$3); print }' file.md

کار کرد . ممنون
ولی براش برنامه نوشتم و امروز صبح حلش کردم . باز هم ممنون