Hogyan kezeljük a fájlnevek átadását szóközzel Bash-ban
A Linuxnak van egy alapértelmezett shell Bash (más néven Bourne again shell) a parancsok végrehajtására a rendszer számára. A legtöbb programozó inkább a bash-t részesíti előnyben a cmd fölött, mivel a bash rugalmassága és hatékony parancssori értelmezője. A legtöbb felhasználónak azonban továbbra is problémái vannak, miközben megpróbálják kezelni a fájlnevek átadását a bash szóközökkel. Ennek oka az, hogy a szóközök nem tekinthetők ugyanolyannak bash-ban, mint a fájlnevekben.
Miért nem ismeri fel Bash a szóközzel ellátott fájlnevet?
A Bash alkalmazásban, ha több szót gépel be karakter (\) vagy idézőjelek nélkül, akkor az összes szót argumentumnak tekinti. Ez vonatkozik minden műveletre, függetlenül attól, hogy a könyvtárat megváltoztatja ' cd ' -vel, vagy megpróbálja elérni a fájlokat a ' cat ' parancsokkal. Bármit, amit ezek felhasználása után írsz, érvelésnek tekintünk. Például:
macska fájlnév.txt
Megjegyzés : A fájlnév bármi lehet, de ehhez a cikkhez példaként a „ fájlnév.txt ” fájlt fogjuk használni.
Itt a „ cat ” parancs a fájlt és a nevet két argumentumnak tekinti, és nem egyetlen argumentumnak. Ha azonban escape karaktereket vagy idézeteket használ, akkor a bash shell ezt egyetlen argumentumnak tekinti, amely a „ fájlnév.txt ” lesz.
Fájlnév szóközzel Bash-ban
Kevés módszer létezik a névben szereplő szóközök felhasználására. A legjobb gyakorlat a fájlnevek szóközének elkerülése a jövőben. Egy egyszerű módszer annak a fájlnak az átnevezése, amelyhez megpróbál hozzáférni, illetve a szóközök eltávolítása. Néhány más módszer egy vagy dupla idézőjelek használata a fájlnévben szóközzel, vagy az escape (\) szimbólum használata közvetlenül a szóköz előtt. Az alkalmazott példákkal módszereket szolgáltatunk, amelyek megmutatják, hogyan működik.
1. módszer: Egy- és dupla idézetek használata
- Tartsa lenyomva a Ctrl + Alt billentyűket és nyomja meg a T gombot a terminál megnyitásához.
- Most váltson arra a könyvtárra, ahol a fájl található.
(A fájlt a terminálba is húzhatja és áthelyezheti a ' cat ' parancs után, amely automatikusan idézeteket helyez a fájl elérési útjára / könyvtárába)
cd Desktop
Könyvtár megváltoztatása Megjegyzés : Az Asztal megváltoztatható azon a helyen, amelyhez megpróbál hozzáférni.
- Írja be a következő parancsot egy szövegfájl olvasásához, a névben szóközzel:
macska 'fájlnév.txt'
vagy
macska "fájlnév.txt"
Idézetek használata a szóköz elkerülése érdekében a névhibában - Az egyszeri és a dupla idézés ugyanazt fogja eredményezni. Bizonyos esetekben mindkettőt meg kell próbálnia, és meg kell állapítania, melyik működik.
2. módszer: A Backlash Escape karakter használata
- Tartsa lenyomva a Ctrl + Alt billentyűket és nyomja meg a T gombot a terminál megnyitásához.
- A következő paranccsal változtassa meg a könyvtárat, ahol a fájl található.
cd Desktop
Megjegyzés : Helyezze el a hely nevét az Asztal helyére.
- Most írja be a parancsot, és használja az escape karaktert, ahol a névben van hely:
macska fájl \ név.txt
Az escape karakter használata a szóköz hibák elkerülése érdekében
Bónusz: Idézetek és menekülés használata
Időnként, ha a könyvtárban használja a parancsot, következményekkel járhat az idézetek használata a teljes útvonalon. Ennek oka az, hogy néhány olyan parancs, mint az ' mv ' vagy a ' cp ', az útvonalat fájlforrásnak tekinti, ha az idézetet teljes egészében használja. Az árajánlatokat mind a forráshoz, mind a rendeltetési helyhez külön meg kell adnia, hogy a ' cp ', például a parancsok megfelelően működjenek. Ellenőrizheti az alábbi példát is, amely megmutatja, hogy a menekülési karakter használata az úthoz sokkal összetettebb, és a felhasználók hibázhatnak vele.