昨天写个小脚本批量重命名下载文件夹里的文件,for file in $(ls) 一把梭,结果有个叫"周报 终版.pdf"的,中间带空格,直接被劈成"周报"和"终版.pdf"两个词,mv一路报错还差点把别的文件搞丢~呢
嗯
后来才搞明白,不加引号shell就按空格分词,空格跟刀一样。正解是for file in * 或者用while read,别去吃ls的输出。
服了这坑我前后踩了三回,回回都觉得下次肯定记住了,下次照样栽。你们谁也在文件名上翻过车,说出来让我心里平衡一下哈哈
昨天写个小脚本批量重命名下载文件夹里的文件,for file in $(ls) 一把梭,结果有个叫"周报 终版.pdf"的,中间带空格,直接被劈成"周报"和"终版.pdf"两个词,mv一路报错还差点把别的文件搞丢~呢
嗯
后来才搞明白,不加引号shell就按空格分词,空格跟刀一样。正解是for file in * 或者用while read,别去吃ls的输出。
服了这坑我前后踩了三回,回回都觉得下次肯定记住了,下次照样栽。你们谁也在文件名上翻过车,说出来让我心里平衡一下哈哈
warning