50٪ تخفیف روی تمام دوره‌ها!
پایان تخفیف تا:
مشاهده دوره‌ها
0

مشکل با دستور sed

سلام آِیا این دستور مشکلی داره یا ن

 

cat /etc/passwd | sed '57 s/bash/no-login/' > /etc/passwd

 

من اینو میزنم کلا دیتای فایل رو پاک میکنه ولی وقتی /etc/passwd/ <     اینو از اخرش پاک میکنم اوکی هس و نشون میده ولی من میخام فایل رو هم تغییر بدم نمیشه

پرسیده شده در 1399/07/26 توسط

2 پاسخ

0

با سلام 

خروجی فرمان cat /etc/passwd | sed '57 s/bash/no-login/'  برای شما لیست کاربرانی را نمایش میده که شل های bash یا no-login استفاده می کند، هدف شما از اجرا این فرمان چیست؟

در صورتی که شما از < و نام فایل استفاده نمایید خروجی فرمان شما به صورت کامل در فایل مورد نظر جایگزین می شود؛ اگر از << استفاده نمایید خروجی فرمان شما به انتهای فایل مورد نظر اضافه می شود.

در فرمان کلی شما باز نویسی خروجی فرمان sed شما مجدد برروی فایل /etc/passwd منطقی نبود و باعث حدف شدن کلید بخشهای دیگر فایل /etc/passwd می شود.

پاسخ در 1399/08/16 توسط
1

والا می خاستم خط 57 رو اون دوتا کلمه رو ریپلیس کنمشون بعد هی پاک میشدن بعد ی راهی پیدا کردم ک غیر منطقی بود ک ی فایل دیگه درست کردم خروجی رو توی اون ریختم بعد اسمشو بع فایل اصلی تغییر دادم و درست شدش

پاسخ در 1399/08/16 توسط

پاسخ شما