BASH,“ touch”和“ ln-s”内部循环

问题描述

在运行此代码时,出现此错误

意外令牌(' 附近的语法错误,请触摸FILE $ i FILE($ i + 1);'

怎么了?

#!/bin/bash

  for ((i=1; i<=99; i++ ));
    do        
    touch FILE$i FILE($i+1);
    ln -s FILE$i FILE($i+1);
       
     done


解决方法

要进行算术运算,请使用$((...))语法:

    touch FILE$i FILE$(($i+1))

请参见https://www.gnu.org/software/bash/manual/bash.html#Arithmetic-Expansion