Paano Pangasiwaan ang Passing Filenames na may Spaces sa Bash



Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema

Ang Linux ay may isang default na shell Bash (aka Bourne muli shell) upang magpatupad ng mga utos para sa system. Karamihan sa mga programmer ay mas gusto ang bash kaysa sa cmd dahil sa kakayahang umangkop at malakas na interpreter ng linya ng utos na ibinibigay ng bash. Gayunpaman, ang karamihan sa mga gumagamit ay magkakaroon pa rin ng mga isyu habang sinusubukang hawakan ang pagpasa ng mga filename na may mga puwang sa bash. Ito ay dahil ang mga puwang ay hindi itinuturing na pareho sa bash tulad ng mga ito sa mga pangalan ng file.



Mga file na may mga puwang sa pangalan



Bakit ang Filename na may Spaces ay hindi Kinikilala ng Bash?

Sa Bash, kung nagta-type ka ng maraming mga salita nang wala makatakas character () o mga sipi , isasaalang-alang nito ang lahat ng mga salita bilang mga argumento. Nalalapat iyon para sa lahat ng mga pagpapatakbo, kung binabago mo ang direktoryo gamit ang ‘ CD ‘O sinusubukan mong ma-access ang mga file gamit ang‘ pusa ‘Utos. Anumang isulat mo pagkatapos gamitin ang mga ito ay isasaalang-alang bilang isang pagtatalo. Halimbawa:



pangalan ng file ng pusa.txt

Pagpapatakbo ng utos nang hindi gumagamit ng makatakas na character o mga sipi

Tandaan : Ang iyong filename ay maaaring maging anuman ngunit para sa artikulong ito, gagamitin namin ang “ pangalan ng file.txt ”Bilang isang halimbawa.

Dito ‘ pusa ‘Isasaalang-alang ng utos file at pangalan bilang dalawang argumento sa halip na isang solong pagtatalo. Gayunpaman, kung gumamit ka ng makatakas na character o mga sipi pagkatapos ay isasaalang-alang ng bash shell na iyon bilang isang solong pagtatalo, na kung saan ay ang ' pangalan ng file.txt '.



Filename na may Spaces sa Bash

Mayroong ilang mga pamamaraan na maaaring magamit para sa mga puwang sa pangalan. Ang pinakamahusay na kasanayan ay pag-iwas sa mga puwang para sa mga pangalan ng file sa hinaharap. Ang isang simpleng pamamaraan ay upang palitan ang pangalan ng file na sinusubukan mong i-access at alisin ang mga puwang. Ang ilang iba pang mga pamamaraan ay gumagamit ng solong o dobleng mga sipi sa pangalan ng file na may mga puwang o gumagamit ng makatakas na simbolo ng () bago ang espasyo. Magbibigay kami ng mga pamamaraan na may mga inilapat na halimbawa upang maipakita sa iyo kung paano ito gumagana.

Paraan 1: Paggamit ng Single at Double Quotations

  1. Hawakan Ctrl + Alt mga susi at Pindutin T buksan Terminal .
  2. Ngayon palitan ang direktoryo kung saan matatagpuan ang file.
    (maaari mo rin kaladkarin at patak ang file sa terminal pagkatapos ng utos na ‘ pusa ‘, Na awtomatikong maglalagay ng mga sipi sa file path / direktoryo)

    cd Desktop

    Pagbabago ng direktoryo

    Tandaan : Maaaring baguhin ang Desktop sa lokasyon na sinusubukan mong i-access.

  3. I-type ang sumusunod na utos upang mabasa ang isang text file na may mga puwang sa pangalan:
    'pangalan ng file.txt' ng pusa

    o

    'pangalan ng file.txt' ng pusa

    Paggamit ng mga sipi upang maiwasan ang mga puwang sa error sa pangalan

  4. Ang mga solong at doble na sipi ay magreresulta sa pareho. Sa ilang mga kaso, kailangan mong subukan ang pareho at makita kung alin ang gagana.

Paraan 2: Paggamit ng Backlash Escape Character

  1. Hawakan Ctrl + Alt mga susi at Pindutin T buksan Terminal .
  2. Baguhin ang direktoryo kung saan matatagpuan ang file sa pamamagitan ng paggamit ng sumusunod na utos.
    cd Desktop

    Tandaan : Ilagay ang iyong pangalan ng lokasyon sa lugar ng Desktop.

  3. Ngayon i-type ang utos at gamitin makatakas character kahit saan may puwang sa pangalan:
    file ng pusa  name.txt

    Paggamit ng character na makatakas upang maiwasan ang error sa mga puwang

Bonus: Paggamit ng Mga Quotation at Escape

Minsan kapag ginagamit mo ang direktoryo sa utos, maaaring may mga kahihinatnan para sa paggamit ng mga sipi sa pangkalahatang landas. Ito ay dahil ang ilang mga utos tulad ng ' mv ‘O‘ cp ‘Isasaalang-alang ang landas bilang pinagmulan ng file kung ang sipi ay ginamit nang buo. Kailangan mong magbigay ng mga sipi para sa pareho pinagmulan at patutunguhan isa-isa upang ang mga utos tulad ng ' cp ‘Maaaring gumana nang maayos. Maaari mo ring suriin ang halimbawa sa ibaba na magpapakita sa iyo na ang paggamit ng makatakas na character para sa landas ay mas kumplikado at ang mga gumagamit ay maaaring magkamali dito.

Ang pagkakaiba sa pagitan ng mga sipi at makatakas na character

2 minuto basahin