Sa maraming pagkakataon ay makakatagpo ka ng mga pangalan ng file at mga direktoryo na may mga intervening space sa kanilang mga pangalan, lalo na ang mga nagmula sa Windows. Ang mga puwang na ito ay madalas na nakakainis, lalo na kapag nagtatrabaho mula sa shell, dahil kailangan mong tukuyin ang mga ito upang hindi sila ituring bilang hiwalay na mga pangalan ng command o mga pagpipilian. Samakatuwid, sa tutorial na ito ay makikita natin ang ilang mga paraan upang awtomatikong alisin ang mga puwang.
Bilang karagdagan, makikita rin natin kung paano magagamit ang mga ito mga file o direktoryo na may mga pangalan na may mga puwang nang hindi naghagis sa iyo ng isang pagkakamali.
Paano gamitin ang mga file at direktoryo na may mga puwang
Upang subukang mga escape space sa mga pangalan ng mga file at direktoryo sa terminal ng Linux, magagawa mo ito sa mga ganitong paraan:
- Kasama ang "" (double quotes) sa bahagi ng path kung saan may mga puwang o sa lahat ng ito. Halimbawa:
cd "nombre con espacio"/
- Paggamit ng \ character bago ang bawat espasyo. Halimbawa:
nano nombre\ con\ espacio.txt
Sa mga paraang ito, gagawin mo laktawan ang mga nakakainis na espasyong ito. Ngayon, upang hindi na muling gamitin ang mga opsyong ito, na maaaring maging mas abala, maaari mong sundin ang mga hakbang na ito...
Paano mag-alis ng mga puwang sa mga pangalan
Ngayon, maaari kang gumamit ng iba't ibang mga paraan upang ang mga namespace na ito ay tumigil sa pagiging isang problema magpakailanman. Kung mayroon kang malaking bilang ng mga pangalan na may mga puwang, hindi lohikal na gawin ang mga ito nang isa-isa, ngunit maaari mong i-automate ang mga gawaing ito upang alisin o palitan ang mga puwang:
- Gamitin ang rename command para dito. Halimbawa, ang una sa mga command na ito ay nag-aalis ng mga puwang mula sa lahat ng .txt na file, habang ang pangalawa ay nag-aalis ng mga puwang mula sa lahat ng mga file sa loob ng kasalukuyang direktoryo:
palitan ang pangalan ng 's/\s/_/g' ./*.txt
palitan ang pangalan ng 's/\s/_/g' ./*.*
- Gamitin ang find upang palitan ang lahat ng mga pangalan na may mga puwang, palitan ang mga ito ng _. Halimbawa, gawin ito sa lahat ng .txt ng kasalukuyang direktoryo o ng buong FS:
find . -type f -name "* *.txt" -exec bash -c 'mv "$0" "${0// /_}"' {} \; **find / -type f -name "* *.txt" -exec bash -c 'mv "$0" "${0// /_}"' {} \;