Daudzos gadījumos jūs būsiet saskārušies ar failu nosaukumiem un direktorijiem, kuru nosaukumos ir atstarpes, īpaši tiem, kas nāk no Windows. Šīs atstarpes bieži ir kaitinošas, it īpaši, strādājot no čaulas, jo tās ir jāidentificē, lai tās netiktu uzskatītas par atsevišķiem komandu nosaukumiem vai opcijām. Tāpēc šajā apmācībā mēs redzēsim dažus veidus, kā automātiski noņemt atstarpes.
Turklāt mēs arī redzēsim, kā tos var izmantot failus vai direktorijus ar nosaukumiem, kuros ir atstarpes nepieļaujot kļūdu.
Kā lietot failus un direktorijus ar atstarpēm
Lai mēģinātu evakuācijas telpas no Linux termināļa failu un direktoriju nosaukumiem, varat to izdarīt šādos veidos:
- Iekļaujot "" (dubultpēdas) ceļa daļā, kur ir atstarpes, vai visā tajā. Piemēram:
cd "nombre con espacio"/
- Pirms katras atstarpes izmantojiet rakstzīmi \. Piemēram:
nano nombre\ con\ espacio.txt
Šajos veidos jūs to darīsit apiet šīs kaitinošās vietas. Tagad, lai šīs opcijas vairs nebūtu jāizmanto, kas var būt neērtākas, varat veikt šīs darbības...
Kā nosaukumos noņemt atstarpes
Tagad varat izmantot dažādas metodes, lai šīs nosaukumvietas vairs nebūtu problēma uz visiem laikiem. Ja jums ir liels skaits vārdu ar atstarpēm, nav loģiski tos darīt pa vienam, taču jūs varat automatizēt šos uzdevumus, lai noņemt vai aizstāt atstarpes:
- Izmantojiet pārdēvēšanas komandu. Piemēram, pirmā no šīm komandām noņem atstarpes no visiem .txt failiem, bet otrā noņem atstarpes no visiem failiem pašreizējā direktorijā:
pārdēvējiet 's/\s/_/g' ./*.txt
pārdēvēt 's/\s/_/g' ./*.*
- Izmantojiet Find, lai aizstātu visus nosaukumus, kuros ir atstarpes, aizstājot tos ar _. Piemēram, dariet to ar visu pašreizējā direktorija vai visa FS .txt:
find . -type f -name "* *.txt" -exec bash -c 'mv "$0" "${0// /_}"' {} \; **find / -type f -name "* *.txt" -exec bash -c 'mv "$0" "${0// /_}"' {} \;