测试具有非标准文件名的脚本的"框架"

Nem*_*emo 5 bash shell

以下是对一些问题(特别是对于shell)的许多评论,这些问题基本上表示以下一个或多个:

  • 对于包含空格,换行符等的文件名,这将失败,
  • 如果文件是符号链接(或不是),这将失败,
  • 如果$filaneme是目录而不是常规文件,这将失败,
  • 等等.

虽然我知道每个脚本都需要自己的测试环境,但这些是脚本应该免受攻击的常见问题.

因此,我的目的是编写一个脚本,它将创建一些带有"特制"文件名的目录层次结构,以便进行测试.

问题是:什么"特殊"文件名对这个测试有好处?

目前我有(脚本创建文件和目录):

  • 文件名中的空格
  • 文件名中的换行符
  • 以下列之一开头的文件名:
    • - (比如命令参数)
    • # (评论char)
    • ! (命令历史)
  • 文件名包含以下之一:
    • | 炭(管)
    • () 字符
    • *?(通配符)
  • 带有unicode字符的文件名
  • 所有上面的目录
  • 目录的符号链接
  • 文件的符号链接

还有什么我不应该错过的想法吗?