gpt4 book ai didi

带变量的 bash 副本

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

我正在尝试使用 bash 脚本将文件复制到当前目录。

为了处理需要转义的路径,使用了一个变量,该变量被转义然后提供给 cp 命令。

cp 命令提示:

usage: cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file target_file
cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file ... target_directory

我知道那是什么意思,但我不明白为什么会这样。

代码如下:

z="/a/b/c d (e) f.txt"
y=`printf %q "$z"`
cp $y x.txt # not working as expected
echo cp $y x.txt # output is "cp /a/b/c\ d\ \(e\)\ f.txt x.txt"

最佳答案

注意:当您遇到 bash 脚本的问题时,您应该使用 -x 选项运行它,因为它提供了第一级调试。

文件名的转义不正确。你应该使用:

cp "$z" x.txt

关于带变量的 bash 副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2922270/

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