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.

A névben szóközökkel ellátott fájlok

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 

A parancs futtatása escape karakter vagy idézetek használata nélkül

Megjegyzés : A fájlnév bármi lehet, de ehhez a cikkhez példaként afájlnév.txtfá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

  1. Tartsa lenyomva a Ctrl + Alt billentyűket és nyomja meg a T gombot a terminál megnyitásához.
  2. 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.

  3. Í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
  4. 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

  1. Tartsa lenyomva a Ctrl + Alt billentyűket és nyomja meg a T gombot a terminál megnyitásához.
  2. 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.

  3. 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.

A különbség az idézetek és a menekülési karakter között

Érdekes Cikkek