Linux 的简单查找和复制脚本

Linux 的简单查找和复制脚本

我对 Linux 中的脚本还很陌生。我想获得一个简单的脚本,它可以根据文件的确切名称查找文件,然后将该文件复制到另一个文件夹。

因此本质上它应该像“./findandcopy [filename]”一样工作这是我目前得到的:

#!/bin/sh

ARGS=1
E_BADARGS=65
E_NOFILE=66

if [ $# -ne "$ARGS" ]  # Correct number of arguments not passed
 then
  echo "Usage: `basename $0` filename"
  exit $E_BADARGS
fi


'find ./ -name \$1'  -exec cp {} /home/marc/ \;

但那对我不起作用。非常感谢任何帮助。

答案1

你应该使用:

find ./ -name "$1" -exec cp {} /home/marc/ \;

不加单引号。否则,shell 会将整个find ./ -name \$1命令视为单个文件名并尝试执行该文件名。

您应该引用该参数"$1"以防止文件名中的空格或符号扩展。

相关内容