Cevabı mutlaka istemiyorum ama birisi beni bazı literatür veya örneklere yönlendirebilirse. Bunu anlamak istiyorum.
Komut dosyasını çalıştırdığımda bir hata alıyorum:
Beklenmeyen belirtecin yanında sözdizimi hatası
fi
ifBeyanlarımı açıklamalarımı yaparak ve isimleri görüntüleyenleri ifekleyerek sorunumun ifademde olduğunu echo "$NAME"belirttim /etc/.
Ben değişiklik yaptığınızda, kaldırmak #gelen ifve five eklemek #için wc -c "$NAME"ben yukarıda listelenen sözdizimi hatası alırsınız. O zaman ;arasına ekledim ]. Ayrıca thenherhangi bir çözüm olmadan bir sonraki satıra geçtim .
#!/bin/bash
for NAME in /etc/*
do
if [ -r "$NAME" -af "$NAME" ] then
wc -c "$NAME"
fi
done
-afyapmalı?
-a, durum zaten dahil edildiği için gereksizdir -f. --- Her neyse [ ](bu komut da test) içinde birden fazla koşulun -a(ve) veya -o(veya) gibi mantıksal işleçler kullanılarak birleştirilmesi gerekir, ancak aşağıdaki yanıtta önerildiği gibi, çoklu [ ]( test) komutları kullanmak ve katılmak daha iyidir &&veya gibi kabuk işleçlerini kullanarak ||.