Hogyan lehet kilépni az írásvédett módból a Vimben?
On február 18, 2021 by adminEgy fájlt csak olvasható módban nyitottam meg; van-e mód arra, hogy kilépjünk az írásvédett módból?
Megjegyzések
Válasz
Ezt megteheti:
:set noro
Ez törli az írásvédett jelzőt, de ha az alapul szolgáló fájl még mindig nem írható, akkor a vim továbbra sem lesz képes írni rá.
Megjegyzések
- hogyan lehet ezt megfordítani és visszamenni csak olvasható?
- @LouisHong Nagyon könnyen:
:set ro
. - Ez tökéletes, ha írható fájlt nyit meg a
view
, de aztán döntsön a szerkesztés mellett. - A fordított is hasznos lehet. Például a
psql
meta paranccsal rendelkezik (\ev
) egy SQL nézet szerkesztésére, amely megnyitja a vim-et az írásra. De ha meg akarok győződni arról, hogy valóban nem változtatok-e a nézeten (a gyártásban!), Azonnal:set ro
. 🙂
Válasz
chmod
belülről futtatható vim:
:!chmod +w %
!
egy shell parancs futtatását jelenti, és %
az aktuális fájlnév. Kényszerítheti a fájl írását is:
:w!
Válasz
Ezenkívül Michael Mrozek válaszához hozzáadhat egy sort a .vimrc
fájlhoz, amely lehetővé teszi, hogy fájlba írjon hogy nem engedte megemelni a jogosultságokat:
" Allows writing to files with root priviledges cmap w!! w !sudo tee % > /dev/null
Ha a fájl csak olvasható, akkor csak a : w ! ! , a rendszer kéri a jelszavát, majd a fájlt sikeresen beírja.
Válasz
Míg :set noro
elvégzi a feladatot, nem ellenőrzi, hogy a fájlt egy másik vim-példány nyitotta-e meg, vagy ha külsőleg megváltoztatja, frissíti a fájlt.
Annak érdekében, hogy szerkeszthetővé váljon, és ellenőrizze a cserefájlokat (ez az alapértelmezett fájl megnyitása a vim használatával), használja a edit parancsot (: help edit):
:e
Ne feledje, hogy ha a fájlt azóta is manipulálták (még a VIM-en kívül is), akkor az aktuális pufferben végrehajtott változásokat frissíti (amit általában kívánatosnak tartok).
Válasz
Tessék, bár kissé későn, de talán már megoldottad a kétségeidet;) még nem láttam bármelyik megjegyzést úgy tudom, hogy vim , tehát hozzáadom:
Ha egyszer fájlt szerkesztenek, megnyomja a :w
vagy a :wq
gombot, és megjelenik a bosszantó üzenet: “ E45 “readonly” opció be van állítva (add! az felülíráshoz) “
Gépelhet
:w !sudo tee %
-
w
írja a puffert, -
!sudo
sudo-val hívja meg a héjat, -
tee
átirányítja avim :w
kimenetét a tee kimenetre, és - az aktuális fájlnév
És ezt meg kell tennie. Ne feledje, hogy ez arra kéri a fájl újratöltését a VIM fájlba, ehhez nyomja meg az L
Válasz
Próbálja ki ezt:
vim -R "filename"
csak olvasható módban nyílik meg, majd egyszerűen tegye ezt a parancsot: q
Próbáltam és beváltam
Megjegyzések
- Sajnálom. Fogalmam sincs, mit mondasz.
Válasz
Próbálja ki a sudo
. root
néven meg kell nyitnia a fájlt. A Sudo
olyan parancs, amelyben engedélyt kérhet a linuxtól.
pl.
sudo vim "filename"
megjegyzések
- Ennek semmi köze a jogosultságokhoz.Ezenkívül soha ne használja a
sudo
-t egy szerkesztő futtatásához; használja helyette asudoedit
szót.
!
fájlt aw
parancs elvégzi a trükköt, ahogy Michael kijelentette.w
után minden alkalommal, amikor menteni akarok. heh