Melarikan diri dari ruang, mis. Spring\ 2011
, atau gunakan tanda kutip, mis. 'Spring 2011'
. Di masa mendatang, biasanya merupakan ide yang buruk untuk menggunakan nama file dengan spasi di dalamnya pada *NIX apa pun.
Jika Anda memiliki rename
, Anda dapat menggunakan ini:
rename ' ' '_' [filenames...]
Jika mesin Anda memiliki perintah rename, maka ini akan mengubah semua spasi menjadi garis bawah di semua file/direktori di direktori kerja saat ini:
rename 's/ /_/g' *
Jika Anda tidak memiliki rename
atau lebih suka menggunakan shell saja:
for f in *\ *; do mv "$f" "${f// /_}"; done
Rusak:
*\ *
memilih semua file dengan spasi di namanya sebagai input untukfor
lingkaran. Pola*X*
memilih semua file denganX
dalam namanya, dan untuk ruang karakter khusus, kita harus menghindarinya dengan garis miring agar bash tidak memperlakukannya sebagai pemisah argumen yang berbeda.- Kutipan di sekitar
"$f"
penting karena kita tahu ada spasi di nama file dan jika tidak maka akan muncul sebagai 2+ argumen untukmv
. ${f//str/new_str}
adalah fitur substitusi string khusus bash. Semua contohstr
diganti dengannew_str
.
Cara mencari file dengan name=php.ini di linux menggunakan perintah grep
Linux setara dengan Windows Registry