【发布时间】:2012-11-09 12:02:38
【问题描述】:
在 ~/.bash_aliases 中,我想为重复单词创建一个别名,该别名将重复给定命令 n 次。
repeat() {
n=$1
shift
while [ $(( n -= 1 )) -ge 0 ]
do
"$@"
done
}
我想使用重复来列出目录中更新的文件,所以我做了以下函数 (WAIT,CLEAR,LIST):
wcls() {
m=$1
shift
clear
date
ls -l "$@"
sleep $m
}
我有一个文件夹,其中 my_file1 和 my_file2。 如果我运行脚本:
repeat 500 wcls 2 my_file*
我明白了
my_file1 ...
my_file2 ...
同时我将 my_file2 更改为 my_file3 脚本不会更新显示的内容
my_file1 ...
my_file2 no such file or directory
我应该怎样做才能让我的函数正确处理星号?
【问题讨论】:
-
如果你在 GNU/Linux 系统上,你应该
man watch。可以为您节省一些编程时间。 -
是的,虽然它更像是一个 MWE,而不是我面临的确切问题。