我正在尝试获取当前会话中所有进程打开的所有常规文件。我有这个代码
while read pid
do
FILES_ACTUAL=$(lsof -p $pid | grep REG | wc -l)
done < <(ps -o pid,tt -u $USER | grep $CURRENT_TERMINAL | awk '{print $1}')
echo $FILES_ACTUAL
但我不知道怎么在里面添加变量$ FILES_ACTUAL ... 我尝试使用awk命令,但我无法做到。
答案 0 :(得分:1)
您可以通过将语句括在(())中来执行bash算法:
NEW_FILES=$(lsof -p $pid | grep REG | wc -l)
((FILES_ACTUAL+=NEW_FILES))
答案 1 :(得分:0)
还有一个叫expr
的命令,它可以对整数进行简单的算术运算,可以像这样使用:
expr $VAR1 + $VAR2