在Linux中使用ls命令列出文件的完整路径
许多人会发现这是重复的问题,但是在询问有关此主题的内容之前,我已经经历了所有问题,但没有一个对我有用。
到目前为止,我想使用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”中未找到文件,表明其打印了机器的根目录文件。
回答:
您可以使用
ls -lrt -d -1 "$PWD"/{*,.*}
它还将捕获隐藏文件。
以上是 在Linux中使用ls命令列出文件的完整路径 的全部内容, 来源链接: utcz.com/qa/435803.html