gpt4 book ai didi

Bash basename 只返回文件夹列表中的姓氏

转载 作者:行者123 更新时间:2023-11-29 09:36:09 25 4
gpt4 key购买 nike

FOLDERS=$( basename "$(find "${LOG_DIR}" ! -path "${LOG_DIR}" -type d )")

/storage/archive/fakeagent/2018-07-12
/storage/archive/fakeagent/2018-06-22

使用 find 命令我得到了这个文件夹列表,我想得到最后的文件夹名称(日期)。当我使用 basename 时,我只取回一个文件夹名称,最后一个:2018-08-16

我应该如何获取所有文件夹名称?

2018-07-12
2018-07-14
...
2018-08-16

最佳答案

您需要在 basename 命令中使用选项 -a 以允许多个参数:

basename -a $(find "${LOG_DIR}" ! -path "${LOG_DIR}" -type d )

basename --help 显示:

-a, --multiple support multiple arguments and treat each as a NAME

如果您的某些文件夹有空格(或控制字符),您最好在 find 命令中使用选项 -exec:

find "$LOG_DIR" -type d -exec basename "{}" \; 

关于Bash basename 只返回文件夹列表中的姓氏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51894267/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com