Tein virheen kirjoittaessani SQLite-komentokehotteeseen komennon, jonka haluan nyt keskeyttää, näin komentorivini näyttää
sqlite> select * from todos" ...> " ...> ;^C
Tässä tapauksessa, todennäköisesti koska olen avannut tarjouksen, en voi edes lyödä komentoa ENTER
. Hanki vain rivin jatko, se olisi silti vähemmän kuin ihanteellinen, koska minun täytyisi suorittaa virheellinen koodi ja syy ja virhe vain palauttaaksesi kehotteen hallinnan.
Kuinka voin peruuttaa rivin / komennon ja palata takaisin kehotteeseen?
Kommentit
Vastaa
sqlite3
-rajapinta käyttää ReadLine-kirjastoa komentorivin muokkaamiseen. Voit poistaa koko rivin h Ctrl + U mutta kun olet painanut Enter , rivi on hyväksytty eikä sitä voi enää muokata.
Kun olet ”ve huomasi , kun lähetät Ctrl + D , asiakas pyytää poistumaan, mitä et halua.
Paras veto on
- sulkea mikä tahansa merkkijono ja luoda sitten tarkoituksellinen syntaksivirhe
- ennen lopullisen
;
julkaisemista.
Esimerkissäsi:
sqlite> select * from todos" ...> " ...> *** I made a mistake ...> ; Error: near "*": syntax error sqlite>
Tämä varmistaa, että mitään ei suoriteta, ja se jättää sinut SQLite-istuntoon väliaikaisten taulukoiden ollessa ehjät.
Kommentit
- kiitos, kyllä luulin, että tämä voisi olla paras ratkaisu
- Jos olet painanut kirjoita nuolinäppäimen jälkeen, ts. sinulla on jotain
> ^[[A
ja sitten...>
, sitten sinun on suljettava suluet peruuttaaksesi sen:> ]];
. Sen pitäisi todella tukea Ctrl + C tätä. ' on tuskallista tällä tavalla.
sqlite
stdin ja sulkee sen …