![确定参数是否看起来像有效路径](https://linux22.com/image/1345591/%E7%A1%AE%E5%AE%9A%E5%8F%82%E6%95%B0%E6%98%AF%E5%90%A6%E7%9C%8B%E8%B5%B7%E6%9D%A5%E5%83%8F%E6%9C%89%E6%95%88%E8%B7%AF%E5%BE%84.png)
我正在编写一个 bash 脚本,需要对一个路径参数执行某些操作,该路径可能对应也可能不对应用户系统上的现有文件,所以我想测试该参数是否看起来像它适合路径的格式,以一种不依赖于对某些现有文件进行测试的方式。
我希望有某种方法可以在不使用正则表达式或其他模式匹配的情况下做到这一点;我担心会错过一些奇怪的边缘情况——理想情况下,我想知道是否有一些 bash 内置函数或类似的东西可以为我完成这个测试。
答案1
路径中唯一不允许出现的字符是 NUL,因此无需适应自然限制。如果您想人为地限制有效字符集(例如,如果您使用的是不符合 POSIX 标准的文件系统),那么您将需要以困难的方式检查字符的有效性。