read -r -p "Enter the filenames: " -a arr
for filenames in "${arr[@]}"; do
if [[ -e "${filenames}" ]]; then
echo "${filenames} file exists (no override)"
else
cp -n ~/Documents/library/normal.py "${filenames}"
fi
done
假设,我B.py D.py
在一个文件夹中。
当我在同一文件夹中运行此脚本并写入A.py B.py C.py D.py
(未定义的输入数量)
命名A.py C.py
的文件时,已成功复制。
而对于B.py D.py
,它分别显示B.py file exists (no override)
和D.py file exists (not override)
。
我想将元素存储在which did worked
与which didn't work
主数组不同的数组中${arr[@]}
arr=('A.py' 'B.py' 'C.py' 'D.py')
didworked=('A.py' 'C.py')
notworked=('B.py' 'D.py')
我怎样才能做到这一点?请有任何建议。
只需将文件名附加到正确点的相应数组中:
(我不会
filenames
在其中用作循环变量,它只是一个文件名(一次),不多。)