gpt4 book ai didi

linux - 检查 UNIX 目录中是否存在两个文件

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:53:43 25 4
gpt4 key购买 nike

早上好

我正在尝试编写一个 korn shell 脚本来查看包含大量文件的目录,并检查每个文件是否也存在,末尾带有 .orig。

例如,如果目录中的文件名为“mercury_1”,则还必须有一个名为“mercury_1.orig”的文件

如果没有,则需要将 mercury_1 文件移动到另一个位置。但是,如果 .orig 文件存在,则什么都不做并移至下一个文件。

我确信它真的很简单,但我在编写 Linux 脚本方面经验不足,非常感谢您的帮助!!

最佳答案

这是一个小的 ksh 片段,用于检查当前目录中是否存在文件

fname=mercury_1
if [ -f $fname ]
then
echo "file exists"
else
echo "file doesn't exit"
fi

编辑:

执行上述功能的更新脚本<​​/p>

#/usr/bin/ksh
if [ ! $# -eq 1 ]
then
echo "provide dir"
exit
fi

dir=$1

cd $dir

#process file names not ending with orig
for fname in `ls | grep -v ".orig$"`
do
echo processing file $fname
if [ -d $fname ] #skip directory
then
continue
fi

if [ -f "$fname.orig" ] #if equiv. orig file present
then
echo "file exist"
continue
else
echo "moving"
mv $fname /tmp
fi

done

希望对您有所帮助!

关于linux - 检查 UNIX 目录中是否存在两个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28580355/

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