gpt4 book ai didi

linux - 如何删除空格后的每个字符?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:59:38 24 4
gpt4 key购买 nike

我正在制作一个脚本,用于创建名为 backup.sh/home/ 目录的备份。备份完成后,我希望脚本以兆字节为单位输出备份大小。以下是我遇到的问题:

# creates an approximate size of the file + the file location
backup_text=$(du $new_backup)
# take off the file name at the end and add an 'M' to specify Megabytes
backup_text=${backup_text%[:blank:]*}M
# print string to console
echo $backup_text

这是我不断得到的输出:

20 /backups/Thu_Aug_22_15:52M

如您所见,备份大小为 20M,这是正确的,但 /backups/... 部分保留。我的脚本做错了什么?

抱歉,可能是一个菜鸟问题,刚刚开始编写脚本 =)

最佳答案

替换模式扩展

有很多方法可以用 Bash pattern matching 来处理这个问题,但我会使用 replacement expansionextglob .例如:

$ shopt -u extglob
$ backup_text='foo bar'
$ echo ${backup_text/+([[:blank:]])*/}
foo

关于linux - 如何删除空格后的每个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18390624/

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