文件名中有空格符,怎样把一个目录下的文件名正确的显示出来

sh/bash/dash/ksh/zsh等Shell脚本
回复
吃好睡好
帖子: 6
注册时间: 2013-04-21 22:32
系统: ubuntu
送出感谢: 0
接收感谢: 0

文件名中有空格符,怎样把一个目录下的文件名正确的显示出来

#1

帖子 吃好睡好 » 2013-05-01 21:43

现在有一个目录work
filelist=$(ls ./work)
for filename in $filelist
do
echo "$filename is a file"
done

如果work目录下有一个文件名course plan,会出现course is a file, plan is a file,
这个问题该怎么解决啊,谢谢了 :em06
头像
枫叶饭团
论坛版主
帖子: 14684
注册时间: 2010-06-16 1:05
系统: Mac OS X
来自: Tencent
送出感谢: 1 次
接收感谢: 132 次
联系:

Re: 文件名中有空格符,怎样把一个目录下的文件名正确的显示出来

#2

帖子 枫叶饭团 » 2013-05-01 21:52

直接for filename in *
不用ls
吃好睡好
帖子: 6
注册时间: 2013-04-21 22:32
系统: ubuntu
送出感谢: 0
接收感谢: 0

Re: 文件名中有空格符,怎样把一个目录下的文件名正确的显示出来

#3

帖子 吃好睡好 » 2013-05-01 21:59

枫叶饭团, 不好意思,我没看明白,你的*是指work这个目录吗?
头像
枫叶饭团
论坛版主
帖子: 14684
注册时间: 2010-06-16 1:05
系统: Mac OS X
来自: Tencent
送出感谢: 1 次
接收感谢: 132 次
联系:

Re: 文件名中有空格符,怎样把一个目录下的文件名正确的显示出来

#4

帖子 枫叶饭团 » 2013-05-01 22:04

先cd到work目录
*就能代替目录下的文件
头像
b33e
论坛版主
帖子: 3862
注册时间: 2011-06-07 14:20
系统: Mint18
送出感谢: 16 次
接收感谢: 62 次

Re: 文件名中有空格符,怎样把一个目录下的文件名正确的显示出来

#5

帖子 b33e » 2013-05-01 22:05

枫叶饭团 写了:直接for filename in *
不用ls
吃好睡好
帖子: 6
注册时间: 2013-04-21 22:32
系统: ubuntu
送出感谢: 0
接收感谢: 0

Re: 文件名中有空格符,怎样把一个目录下的文件名正确的显示出来

#6

帖子 吃好睡好 » 2013-05-01 22:11

枫叶饭团 写了:先cd到work目录
*就能代替目录下的文件
嗯,谢谢了,问题可以解决了
zcf115
帖子: 398
注册时间: 2009-06-28 10:06
系统: ubuntu12.04
送出感谢: 0
接收感谢: 6 次

Re: 文件名中有空格符,怎样把一个目录下的文件名正确的显示出来

#7

帖子 zcf115 » 2013-05-06 14:51

eval files=(ls ./work)

Sent from my Lenovo A710e using Tapatalk 2
Still Alive
回复

回到 “Shell脚本”