![如何在限制写入 18 启用模式下将具有给定前缀的文件的内容复制到另一个文件?](https://linux22.com/image/346816/%E5%A6%82%E4%BD%95%E5%9C%A8%E9%99%90%E5%88%B6%E5%86%99%E5%85%A5%2018%20%E5%90%AF%E7%94%A8%E6%A8%A1%E5%BC%8F%E4%B8%8B%E5%B0%86%E5%85%B7%E6%9C%89%E7%BB%99%E5%AE%9A%E5%89%8D%E7%BC%80%E7%9A%84%E6%96%87%E4%BB%B6%E7%9A%84%E5%86%85%E5%AE%B9%E5%A4%8D%E5%88%B6%E5%88%B0%E5%8F%A6%E4%B8%80%E4%B8%AA%E6%96%87%E4%BB%B6%EF%BC%9F.png)
我知道一个文件的前缀——并且我也知道存在一个具有该前缀的文件。
我在受限 write18 启用模式下运行 pdftex。
我想将该文件的内容复制到一个新文件中。
我该怎么办?诸如ls
、touch
等命令已被禁用。
我知道如何从一个文件复制另一个文件 - 主要问题是找到具有与给定前缀匹配的前缀的文件。我如何找到这个文件?
答案1
您始终可以选择在启动 tex 之前运行此类命令,而不是依赖于 shell-escape。
例如命令行
ls * > filelist.tex; pdflatex myfile
会保留文件的文件名,filelist.tex
这样即使您随后从文档内部生成前缀,myfile
您也可以循环file.list.tex
使用\read
util 来找到所需的文件。
(如果提前知道前缀,您当然可以使用,ls prefix* > filelist
这样如果只有一个文件具有该前缀,就不需要循环了)