Skip to content
Advertisement

Cannot assign variable in for-loop in shell script

I tried to assign variable a in for-loop:

#!/bin/bash

for file in `ls`
do
  a = $file
done

But when I run, it gave error:

line 5: a: command not found

Why did it give error? How to assign variable a?

Advertisement

Answer

There can be no spaces on both sides of the equal sign when defining variables in the Shell.

It should be:

a=$file
User contributions licensed under: CC BY-SA
1 People found this is helpful
Advertisement