tcsh脚本,查找问题以及文件名或目录名中的特殊字符

时间:2013-10-25 11:56:30

标签: tcsh

我是一名初学者脚本编写者,在tcsh和csh中编写脚本(这些都是在我的课程中教授的)

我正在编写一个使用find来放置目录路径的脚本 这是脚本的一部分:

set list = (`find $PATH -type d`)

它工作正常,直到文件或目录名称没有命名,如: @网络@@ lename和放大器;&安培;或-filename或: - ,?!drectoryanem!-``

我无法处理的这些特殊字符我将查找脚本更改为:

set list = ("`find $PATH -type d`")

当我想在下一个脚本中使用列表中的路径时,这些都不起作用:

foreach i ($list:q)
   foreach file (`find "$i" -maxdepth 1 -type f`)
   ....
   end
end

它无法处理这些特殊的文件名,所以我得到很多错误,比如find: - 。“!filename:没有这样的文件名或目录

1 个答案:

答案 0 :(得分:0)

我解决了

必须这样:

set subor = ("`find "'"$i"'" -type f -maxdepth 1`")

现在它忽略了文件名中的所有内容

并在:

foreach j ($subor:q)

我这样引用它忽略文件名中的白色字符