一般情况下是通过这种方式运行该脚本的:my_mplayer.sh ~/music/*,
我的脚本通过$@将音乐文件名传递给mplayer。
可问题是~/music目录中的有些音乐文件是包含空格的,比如"let it be.mp3",
遇到这样的曲目时,传递给mplayer的歌曲名称似乎就被mplayer理解为了3首:"let", "it", "be.mp3",
自然,这首歌就无法正常播放了。

请问如何编写脚本才能解决这个问题呢?谢谢!
你的意思是这样吗?xiooli 写了:在脚本里面工作的地方如此写:
for i in $1;do mplayer "$i";done
不行么?
eexpress:你提供的两种方法我都尝试了一下,eexpress 写了:3个。。。额,有4个的啊。
代码: 全选
#! /bin/bash
files=`ls ~/music/*`
for file in $files
do
echo "$file"
done
代码: 全选
#! /bin/bash
for file in $@
do
echo "$file"
done
太棒了,就是这个效果。c\nc 写了:又见到ee的马甲加皮袄了……
简单的方法,并且还能用到nautilus和thunar右键脚本里的:代码: 全选
IFS=$'\n' for f in $*; do echo "$f" done
看不出你那是几个,眼都花了eexpress 写了:难道有人复制了4个"?