访问bash循环中的文件特征/属性

访问bash循环中的文件特征/属性,bash,loops,filesize,Bash,Loops,Filesize,我正在学习更多关于bash脚本的知识。当循环遍历目录中的文件时,我希望能够呼出的不仅仅是文件名。如何访问关联的文件数据 我使用这个示例代码列出文件夹中的所有文件 for file in .* *; do echo "$file"; done 要访问$file大小或日期,我需要添加什么?我注意到这并不像$file.size和$file.date那么简单。尽管你称它们为“文件”,但你得到的只是带有文件名的字符串。 在for循环的每次迭代中,可以将$file与其他命令(例如“stat”或“ls-l”

我正在学习更多关于bash脚本的知识。当循环遍历目录中的文件时,我希望能够呼出的不仅仅是文件名。如何访问关联的文件数据

我使用这个示例代码列出文件夹中的所有文件

for file in .* *; do echo "$file"; done
要访问$file大小或日期,我需要添加什么?我注意到这并不像$file.size和$file.date那么简单。

尽管你称它们为“文件”,但你得到的只是带有文件名的字符串。 在for循环的每次迭代中,可以将$file与其他命令(例如“stat”或“ls-l”)一起使用,以提取有关文件的信息,然后必须解析其输出(使用“awk”或“sed”)

因此,解决方案将是:

for file in .* *; do COMMAND_TO_GET_INFO "$file" | COMMAND_TO_PARSE_OUTPUT ; done
根据您的需要,COMMAND_TO_GET_INFO和COMMAND_TO_PARSE_OUTPUT可以是不同的命令。

尽管您称它们为“file”,但您得到的只是带有文件名的字符串。 在for循环的每次迭代中,可以将$file与其他命令(例如“stat”或“ls-l”)一起使用,以提取有关文件的信息,然后必须解析其输出(使用“awk”或“sed”)

因此,解决方案将是:

for file in .* *; do COMMAND_TO_GET_INFO "$file" | COMMAND_TO_PARSE_OUTPUT ; done

根据您的需要,命令获取信息和命令解析输出可以是不同的命令。

查看stat(1)。这取决于您想要查看的相关文件数据,但实际上,
stat
可能是一个好的开始。这个问题将不同的内容合并在一起:访问文件属性,在bash脚本中打印一些文件属性,并在bash中循环一个序列。看看stat(1)。这取决于您想要查看的关联文件数据,但实际上
stat
可能是一个好的开始。这个问题将不同的事情合并在一起:访问文件属性,在bash脚本中打印一些文件属性,在bash中循环一个序列。