假设我想在 shell 脚本中的特定目录上执行一些操作,例如 touch/rm
等。
首先,我可以 cd 到该目录并执行此操作。
其次,我可以使用绝对路径来做到这一点。
我的问题是,从性能角度来看,哪一个会更好?哪一个更快?
最佳答案
您可以自己计时:
function timeThis {
n=0
path="test/a"
rm $path
if [[ "$1" == abs ]]; then
path="$(pwd)/$path"
fi
echo "$path"
while [[ $n -lt 10000 ]]; do
touch $path
let n++
done
}
echo "absolute"
time timeThis abs
echo "relative"
time timeThis rel
有了这个我得到:
absolute
real 0m5.502s
user 0m3.394s
sys 0m2.398s
relative
real 0m5.492s
user 0m3.599s
sys 0m2.373s
所以在我尝试的路径上的多次迭代几乎是相同的
关于linux - 哪个更好?使用 cd 并执行还是使用绝对路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44350783/