我尝试cp使用数组将 2 个或更多文件从一个目录复制到另一个目录。
我执行了:
files=(
LocalSettings.php
robots.txt
.htaccess
${domain}.png
googlec69e044fede13fdc.htm
)
Run Code Online (Sandbox Code Playgroud)
用表格缩进的文件名;
我的目标是之后执行:
cp -a "source_path/${files[@]}" "/destanation_path"
Run Code Online (Sandbox Code Playgroud)
我的问题是,在测试变量本身时,
echo $files只返回第一个文件名,LocalSettings.php而不是完整的文件列表。
你会如何解释这一点?
相关:多线方式的cp;
它的Bash功能描述在man bash:
引用一个没有下标的数组变量相当于引用一个下标为 0 的数组。
如果要打印files数组的所有成员:
echo "${files[@]}"
Run Code Online (Sandbox Code Playgroud)
还描述于man bash:
${name[@]} 将 name 的每个元素扩展为一个单独的单词。
| 归档时间: |
|
| 查看次数: |
483 次 |
| 最近记录: |