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

کمک و پشتیبانی => راهنماها، نکات و ترفندها => نویسنده: امیر آهنگری در 31 امرداد 1393، 03:16 ب‌ظ

عنوان: مشکل در خروج از vim
ارسال شده توسط: امیر آهنگری در 31 امرداد 1393، 03:16 ب‌ظ
سلام
هربار که یه فایل با root permission رو باز می کنم موقع خروج ارور  'readonly' option is set  رو می ده.
با چه کامندی می تونم خارج شم؟
عنوان: پاسخ : مشکل در خروج از vim
ارسال شده توسط: دانیال بهزادی در 31 امرداد 1393، 03:18 ب‌ظ
خب برای این کار ابتدا باید با دsترسی ریشه vim رو باز کنی. یعنی با sudo vim.
در این حالت فقط باید بگی دستکاری‌هایی که تا الآن کردی رو نادیده بگیره و بیاد بیرون که با این دستور انجام می‌شه:
:q!
البته اگه نمی‌خوای تغییراتت رو از دست بدی می‌تونی از این دستور استفاده کنی که با گرفتن گذرواژه، با دسترسی ریشه ذخیره‌اش کنه. ولی خیلی توصیه نمی‌شه:
:w !sudo tee %
یه اسکریپت (http://www.vim.org/scripts/script.php?script_id=2709) هم هست که با نصبش می‌تونی از این دستور برای نوشتن با دسترسی ریشه استفاده کنی که البته استاندارد نیست و اگه بهش عادت کنی ممکنه روی رایانه‌هایی غیر از رایانه‌ی خودت که این پلاگین روشون نصب نیست دچار مشکل شی:
:SudoWrite
عنوان: پاسخ : مشکل در خروج از vim
ارسال شده توسط: امیر آهنگری در 31 امرداد 1393، 03:41 ب‌ظ

البته اگه نمی‌خوای تغییراتت رو از دست بدی می‌تونی از این دستور استفاده کنی که با گرفتن گذرواژه، با دسترسی ریشه ذخیره‌اش کنه. ولی خیلی توصیه نمی‌شه:
:w !sudo tee %
دانیال این کده sudo tee % یعنی چی؟ برای vim یا کامنده لینوکسه؟ اون درصده چی کارس؟
عنوان: پاسخ : مشکل در خروج از vim
ارسال شده توسط: دانیال بهزادی در 01 شهریور 1393، 10:37 ب‌ظ
tee یک نرم‌افزاره که خروجی استاندارد رو می‌خونه و اون رو تو ورودی استاندارد می‌نویسه. این دستور مي‌گه تغییرات رو بی‌خیال شو (!)، با دسترسی ریشه (sudo) متن داخل (%) رو بخون و تو ورودی بذار (tee)، بعد اون رو بنویس رو پرونده (w)