, вероятно, довольно простой вопрос для вас, но прошло какое-то время. Я застрял в этой проблеме. В основном я хочу, чтобы выполнить некоторые операции в каждом CSV файл в папку и я поставил вместе этот простой скрипт:в то время как цикл чтения всегда ложный - bash
#!/bin/bash
for file in *.csv ;
do
echo $file #check
OLDIFS=$IFS
IFS=","
while read var1
do
echo $var1
done < $file
IFS=$OLDIFS
done
CSV-файлы следуют все в том же формате, 1 линия и 12 переменные, такие как:
name,1,2,3,4,5,6,7,8,9,11
Мне кажется, что условия while всегда ложные и никогда не запускаются. Не могли бы вы сказать, где я ошибаюсь? Thanks
Похоже, что это должно сработать. Какую оболочку вы используете? Как вы его запускаете? Где вы его запускаете и где находятся csvs, находятся ли они в одном каталоге? Вы вообще получаете какой-либо вывод? – 123
Двойная цитата ваших переменных: 'done <" $ file "' – choroba
Каков результат запуска этого скрипта? Вы видите, что он выводит любые имена файлов? –