请教一个Linux命令:find -name . "*test*" -type f|xargs cp ../test...
发布网友
发布时间:2024-10-04 03:19
我来回答
共2个回答
热心网友
时间:2024-10-04 03:44
应该这么写
find . -name "*test*" -type f -exec cp {} ../testdir2/ \;
表示查找目录的.要在find之后-name之前,或者干脆省略
xargs把管道输出的文件名添加到命令的结尾。而你需要做的复制操作,源文件名应该在cp和目标目录之间。可以用find自带的-exec操作,用{}代替查找到的文件名,以\;作为命令结尾。
热心网友
时间:2024-10-04 03:41
可以用for来写
#! /bin/bash
FILENAME=`find ./ -name 'test'`
for i in $FILENAME
do
if [ -f $i ]
then
cp $i ../testdir2/
fi
done