كيفية تغيير إذن الملف من داخل السادس

StackOverflow https://stackoverflow.com/questions/1606646

  •  05-07-2019
  •  | 
  •  

سؤال

وأنا في بعض الأحيان فتح ملف للقراءة فقط في السادس، متناسين أن تفعل chmod +w قبل فتحه. هل هناك طريقة لتغيير الملف من داخل السادس؟

وشيء من هذا القبيل !r chmod +w [filename]؟

هل هناك اختصار للإشارة إلى الملف المفتوح حاليا دون هجاء عليه اسم طويل؟

هل كانت مفيدة؟

المحلول

ومجرد استخدام

:!chmod +w %

وفي وضع الأوامر. سيتم استبدال٪ من اسم الملف الحالي.

نصائح أخرى

إذا كان لديك حقوق الكتابة إلى ملف، ثم يمكنك فقط استخدام علامة التعجب لإجبارها:

:w!

إذا لم يكن لديك حقوق وتحتاج إلى تغيير المستخدم، ولكن لا تزال ترغب في الكتابة إلى ملف، وأحيانا قد تذهب لشيء من هذا القبيل

:w !sudo tee %

وأنا أعلم أن هذه هي وظيفة العمر، ولكن مع فيم Version8 أدرج وظيفة والتي يمكنك تغيير أذونات الملف.

ووفقا لملف version8.txt:

<اقتباس فقرة>   

وsetfperm () تعيين أذونات ملف

ويمكن بعد ذلك أن يسمى

وهذه الوظيفة عن طريق الأمر "الدعوة" في فيم.

ويتم ذلك على النحو التالي:

:call setfperm("file name","permissions")

وهيكل السلسلة "الأذونات" يأخذ نفس الشكل كما هو موضح في وثائق فيم:

<اقتباس فقرة>   

وgetfperm ({fname}) <م> getfperm ()           والنتيجة هي سلسلة، وهو القراءة، والكتابة، وتنفيذ           أذونات ملف معين {fname}.           إذا {fname} غير موجود أو الدليل الخاص به لا يمكن قراءتها، ل           يتم إرجاع سلسلة فارغة.           والنتيجة هي النموذج "rwxrwxrwx"، حيث كل مجموعة من           "RWX" أعلام تمثل، في المقابل، أذونات المالك           من الملف، مجموعة ينتمي الملف إلى والمستخدمين الآخرين.           إذا لم يكن لدى المستخدم إذن في ضوء العلم لهذا           يتم استبدال السلسلة "-". مثال:               : صدى getfperm ( "/ الخ / باسود")           هذا من المؤمل (من الناحية الأمنية) عرض           السلسلة "RW-ص - r--" أو حتى "RW -------"

.

وA الحد الأدنى سبيل المثال:

:call setfperm("foo.txt","rwxrwxrwx")

وهذا يضيف القراءة والكتابة وتنفيذ الأذونات إلى ملف "foo.txt" في الدليل الحالي.

هل حاولت

!chmod +w %

وو٪ تمثل اسم الملف الحالي.

هل يمكن أيضا تعيين مفتاح هذا مثل على Ctrl-W.

:map <C-w> :!chmod +w %<CR>

ملحوظة الذي تكتبه على Ctrl-V على Ctrl-M للحصول على <CR>

وبعد تحرير الملف الخاص بك مع همة، اضغط على "حساب الضمان" ثم ":". ثم اكتب الأمر التالي:

w !sudo tee %

ثم اضغط على "دخول". ثم اكتب

:q!

وبنجاح الخروج من المحرر.

:!chmod <perms> <file>

وإذا السادس لا يزال لا تريد أن تكتب عليه،

:se cpo-=W
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top