3

我正在尝试将文本文件中列出的所有文件排入 VLC 播放列表。每行都包含一个电影文件的绝对路径。

只需将一个文件添加到播放列表即可完美运行:

vlc --playlist-enqueue someMediaFile

我还可以使用 cat 和 awk 为文本文件中列出的每一行执行命令(例如打印),如下所示:

cat avis.txt | awk '{print $0}'

...

但结合起来,它不起作用:

cat avis.txt | awk '{vlc --playlist-enqueue $0}'

上面的行将文件 avis.txt 的内容逐行打印到标准输出,而 awk 使用管道逐行从那里读取数据。awk 还将用文件中的“n”行替换 $0。因此,由 awk 执行的每个命令都将如下所示,我想:

vlc --playlist-enqueue firstLineFromAvis.txt
vlc --playlist-enqueue secondLineFromAvis.txt
...
vlc --playlist-enqueue nLineFromAvis.txt

但这并没有发生。有人可以告诉我我做错了什么吗?我不能像这样使用 awk 执行带有参数的程序吗?

谢谢阅读。

约翰

4

2 回答 2

5
xargs -a avis.txt -I {} vlc --playlist-enqueue {}
于 2012-08-28T00:34:15.507 回答
0
cat avis.txt | awk '{print "vlc --playlist-enqueue "$0}' > updatedFile.txt
于 2012-08-28T00:30:56.917 回答