许多人会发现这是重复的问题,但在被问及这个话题之前,我已经解决了所有问题,但没有一个对我有用。
我想使用 ls 命令打印特定文件格式的完整路径名,到目前为止,我发现有一段代码可以打印目录中的所有文件,但不是完整路径。
for i in io.popen("ls /mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7"):lines() do
if string.find(i,"%.*$") then
print(i)
end
end
这将打印出根目录和子目录中的所有文件。
输出:
0020111118223425.lvf
2012
2012 (2009).mp4
3 Idiots
Aashiqui 2
Agneepath.mkv
Avatar (2009)
Captain Phillips (2013)
Cocktail
我想要像这样的输出:
/mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/0020111118223425.lvf [File in Root Directory]
/mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/2012/2012.mkv
/mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/2012 (2009).mp4 [File in Root Directory]
/mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/3 Idiots/3 Idiots.mkv
/mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/Aashiqui 2/Aashiqui 2.mkv
/mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/Avatar (2009)/Avatar (2009).mkv
/mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/Captain Phillips (2013).mkv
/mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/Cocktail/Cocktail.mkv
编辑: 我已经使用了这一切,但它不适用于我在 LUA 中的代码。
当我使用我的代码时,它显示错误的目录
for i in io.popen("ls -d $PWD/* /mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7"):lines() do
if string.find(i,"%.*$") then
print("/mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7/"..i)
end
end
在“/mnt/mediashare/net/192.168.1.220_STORAGE_1d1b7”中找不到文件,它会打印机器根目录文件。
原文由 Prakash.DTI 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以使用
它还将捕获隐藏文件。