Я вперше навчився кодувати Cмовою та користуватися
if ( code )
then
code
fi
мені дуже важко читати свій код (не питайте, чому). Чи є заміна then?
Щось на зразок цього:
if ( code ) {
code
}
fi
Я вперше навчився кодувати Cмовою та користуватися
if ( code )
then
code
fi
мені дуже важко читати свій код (не питайте, чому). Чи є заміна then?
Щось на зразок цього:
if ( code ) {
code
}
fi
Відповіді:
Замінника немає, але ви можете використовувати обидва, якщо вам дійсно потрібні брекети:
if true ; then {
something
} fi
Тут використовується непотрібна явно обмежена командна група як тіло thenблоку. Будь-які команди в дужках просто виконуватимуться в поточній оболонці під час виконання then, точно так, як ніби дужки не були там.
Я б не рекомендував цей стиль взагалі або для коду, який потрібно буде прочитати комусь іншому, але він дає вам потрібні дужки, і це зробить трюк, якщо ви використовуєте редактор, який вимагає блокованих блоків або щось схоже.
{ if { [[ a == aa ]];};then { echo yes;};else { echo no;}; fi;}- в основному, коли ви використовуєте bashдостатньо, стандартний синтаксис стає достатньо звичним, так що це не велика проблема.
Ви , здається, шукає оболонки C ( csh, tcsh, і т.д. ...). Майте на увазі, що експерти рекомендують проти цього програмування .
Я не впевнений, чи є частина, яку ви вважаєте непривабливою, це факт, який thenзнаходиться у наступному рядку? Якщо так, подумайте про наступний стиль:
if condition; then
stuff
fi
Я повинен визнати , що імена правопис виписки тому , як fiдля ifі esacдля case(але не elihwдля while!) Начебто Quirky. Але це стандартна оболонка Bourne, самий портативний синтаксис оболонки, який ви можете використовувати.
thenнепривабливим, просто мій редактор виділить відповідні {}пари, і це корисно, коли у мене є якась помилка, тому що я можу легко побачити всі мої ifзаяви і побачити, чи щось пішло не так .
vi, %яка переходить на відповідні дужки / дужки / дужки. Я співчуваю. Я сумую за vi«s %команди при програмуванні на Python.
Можливо, це простіше для очей:
[ condition ] && {
# statement 1
# statment 2
# ...
}
Крім цього, просто звикніть. Використовуйте мовні ідіоми.
Наступне поруч. І дивно.
: if; { code; } && {
code
}
Мені особисто ніколи не подобалося ...
if true; then
more;fi
... формувати себе. Мені подобається, коли контрольні слова ведуть . Мені завжди здавалося дивним, що панівна ...;thenформа взагалі виникала.
if this && that
then do these things too
else i will probably get upset
fi
Це майже повністю протилежно вашому запиту, але це ще один спосіб зробити це. Ви також можете встановити будь-які потрібні переадресації до fiрядка за потребою, і вони будуть застосовуватися до всього блоку.
if(...) {, тобто залишаючи відкриваючу дужку на тій же лінії, що і ifв мовах подібних С.
ifкоманди, навіть якщо в наступному рядку.
;у цьому випадку ти повинен використовувати делім. Ось чому вони так і роблять.
:оболонку, побудовану таким чином, лише так, щоб рядок коду міг бути на байт ближче до синтаксису С, жодним чином не слід заохочувати.
Я завжди використовую:
if (code); then
code;
fi
Напевно, не зовсім те, що ви хочете, але це трохи більше, як на к.