gpt4 book ai didi

bash - 使用 bash 参数扩展获取文件路径

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

给定一个文件的路径让我们说:/home/user1/archive.zip

有人能告诉我如何在不使用外部二进制文件的情况下删除字符串 archive.zip 吗?

我知道:

${Path2File##*/}

可以给我文件名,但我需要这个文件的文件夹路径。

也欢迎通配符理解指南或解释。

最佳答案

"${Path2File%\/*}"

或使用外部二进制文件

dirname "$Path2File" # Not desirable as you've mentioned already

注意事项:

  1. ${parameter%word} 类型的 shell 参数扩展中,单词被扩展以产生一个模式,就像在文件名扩展中一样。如果模式与参数扩展值的尾部匹配,则扩展的结果是删除了最短匹配模式的参数值。
  2. 由于 / 在 shell 参数扩展中有特殊含义,我们只是将其转义,即 \/。目的是匹配文件基本名称即/path/to/example.zip 中的/example.zip 并删除。

引用:

壳牌 [ Parameter Expansion ]

关于bash - 使用 bash 参数扩展获取文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38034634/

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