gpt4 book ai didi

Bash 脚本到带空格的 tar 文件夹

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

我正在尝试制作一个 bash 脚本,它将以递归方式单独对所有文件夹进行压缩。

但是,我有一个问题,因为一些文件夹名称有空格等。所以它不能正常工作。

我有什么:

#!/bin/bash
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
for i in $(ls ./2011)
do
tar -zcvf "$i".tar.gz "$i"
done
IFS=$SAVEIFS

然而问题出现了例如:

tar -zcvf St Patricks Day Bar Night.tar.gz St Patricks Day Bar Night

空格会导致问题,有什么好的解决方法吗?

最佳答案

在文件名周围使用双引号和 bash 文件名扩展 而不是 ls

#!/bin/bash
for i in ./*
do
echo tar -zcvf "$i.tar.gz" "$i"
done

关于Bash 脚本到带空格的 tar 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7230005/

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