![如何在 LibreOffice Calc 中自动创建给定文件夹中的文件和文件夹列表?](https://linux22.com/image/1034484/%E5%A6%82%E4%BD%95%E5%9C%A8%20LibreOffice%20Calc%20%E4%B8%AD%E8%87%AA%E5%8A%A8%E5%88%9B%E5%BB%BA%E7%BB%99%E5%AE%9A%E6%96%87%E4%BB%B6%E5%A4%B9%E4%B8%AD%E7%9A%84%E6%96%87%E4%BB%B6%E5%92%8C%E6%96%87%E4%BB%B6%E5%A4%B9%E5%88%97%E8%A1%A8%EF%BC%9F.png)
如何在 LibreOffice Calc 中自动创建给定文件夹中的文件和文件夹列表?我希望它有尽可能多的信息(大小、名称、文件夹层次结构……)并以漂亮的小单元格排序。我不想使用 ls 将其转储到文件中,然后尝试手动对其进行排序:这会产生糟糕的输出。
答案1
最好的办法是使用脚本语言(Ruby、Python、Perl 等)用这些数据创建 CSV 格式的文本文件。Calc 可以将 CSV 文本文件导入为电子表格。
一个可帮助您入门的 Ruby 脚本示例:
#!/usr/bin/env ruby
require 'csv'
table = [['Name', 'Size', 'Path']] #These are your headings - you can change them
Dir['./*'].each do |file|
table << [File.basename(file), File.size(file), File.expand_path(file)]
#You can add extra columns with extra information in the above line
end
File.open('output.csv', 'w') do |f|
f.puts table.map {|row| CSV.generate_line(row) }.join("\n")
end
在适当的目录中运行此程序,然后使用 Calc 打开文件“output.csv”。导入时使用以下设置: