我正在尝试编写一个脚本,该脚本将显示该脚本执行目录中最早的文件的名称。Bash脚本来查找并显示最旧的文件
这是我到目前为止有:
#!/bin/bash
for arg in $*
do
oldest=$1
if [[ $arg -ot $oldest ]]
then
oldest=$arg
fi
done
echo "Oldest file: $oldest"
我不知道如何以递增到下一个文件来检查它是否是旧的
例如:
oldest=$2
oldest=$3
etc..
试图在给定以下参数的bash shell中运行此脚本:
myScript `ls -a`
我得到的结果是:
Oldest File: .
'在$ * ARG'是越野车 - 与包含空格或引用通配符来看看为什么参数尝试。 '对于“$ @”'中的arg或者'对于arg'(默认行为是对''@ @“''进行迭代)是正确的选择。当然,所有这些都假设你正在迭代命令行参数,而不是文件。 – 2014-11-24 03:08:17
...对文件进行迭代,它在*中用于arg,或许在循环内部带有一个'[-d“$ arg”] && continue'来跳过目录。 – 2014-11-24 03:10:35