使用while read line 读取有\字符的文件执行文件拷贝
ls | while read line;do |
cp $line /tmp
done
此方法与for 循环的拷贝的区别是 for 循环不能读出标点后的转译符号。导致不能正常拷贝。
for i in ls xxx
;do
cp $i /tmp
done
如果文件名为[电影天堂www.dy2018.com]黑金杀机BD中英双字.rmvb
终端中会读取为\[电影天堂www.dy2018.com\]黑金杀机BD中英双字.rmvb
for 循环中会将此文件名在 第二个\后面做换行操作,导致文件名错误后不能正常复制
试例:
for 循环书写方法以及现象:
while 循环书写方法以及现象: