繁体   English   中英

将目录中文件的多个文件名连接到一个字符串

[英]Join multiple file names of files in a directory to a string

我有一个包含许多文件的目录。

必须调用可执行文件<executable> ,其名称后跟目录中的所有文件 ( file_1 ... file_n ) 和<outputfile>

例子:

executable file_1 ... file_n outputfile

如何从同一目录读取所有文件并生成一个可以执行的字符串?

该脚本将打印出您想要的字符串,并在文件名上加上适当的引号:

#!/bin/bash

printf -v files '%q ' *
cmd="executable $files outputfile"
echo "$cmd"

您实际上可以使用eval "$cmd"执行命令。 在这里使用eval是安全的,因为文件名被%q正确引用,这是一个bash特定的printf转换规范。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM