سلام. هنگام نصب abaqus cae در ابونتو مطابق راهنما باید بررسی توزیع لینوکس را با دستور زبر دور زد.
To bypass the Linux distro checks, invoke StartGUI.sh with following exports:
export DSYAuthOS_`lsb_release -si`=1
export DSY_Force_OS=linux_a64
export NOLICENSECHECK=true
اما دستورات بالا عمل نمیکنند و با پیغام زیر خارج میشود
sh StartGUI.sh
StartGUI.sh: 4: typeset: not found
CurrentMediaDir initial=""
StartGUI.sh: 6: typeset: not found
StartGUI.sh: 8: [[: not found
StartGUI.sh: 10: [[: not found
CurrentMediaDir="/media/****/DS.SIMULIA.2022.LNX64/1/"
StartGUI.sh: 19: typeset: not found
Current operating system: "Linux"
StartGUI.sh: 8: /media/****/DS.SIMULIA.2022.LNX64/1//inst/common/get_DSY_OS.sh: [[: not found
StartGUI.sh: 16: /media/****/DS.SIMULIA.2022.LNX64/1//inst/common/get_DSY_OS.sh: [[: not found
/usr/bin/lsb_release
StartGUI.sh: 4: /media/****/DS.SIMULIA.2022.LNX64/1//inst/common/init/Linux.sh: [[: not found
DSY_OS_Release="Ubuntu"
StartGUI.sh: 13: /media/****/DS.SIMULIA.2022.LNX64/1//inst/common/init/Linux.sh: [[: not found
Unknown linux release "Ubuntu"
exit 8
به نظر میاد اون یه اسکریپت bash باشه، شما خواستید اون رو با sh اجرا کنید. bash قابلیتهای بیشتری از sh داره، به خاطر همین نمیتونید بعضی از اسکریتهای bash رو درست با sh اجرا کنید. اگه توی اسکریپت از قابلیتهای مخصوص bash استفاده شده باشه (مثل آرایهها یا همین ]] که بالا دیدید)، اون وقت اجرای اون اسکریپت با sh، به مشکل میخوره.
میتونید اون رو با bash اجرا کنید و ببینید کار میده یا نه. اینجوری
bash StartGUI.sh
توی حالت بالا، فرض کردیم که ما توی دایرکتوری هستیم که اسکریپت داخلش قرار داره.
راه بهتر اینه که ببینید اون فایل باید با چی اجرا بشه. معمولا خط اول اسکریپتها، با چیزی شبیه !# شروع میشه و جلوی اون بدون فاصله، مسیر به چیزی که قرار اسکریپت رو اجرا کنه قرار میگیره. مثلا اگه یه چیزی قرار باشه با perl اجرا بشه، خط اول اون این شکلی میتونه باشه
#!/usr/bin/perl
برای اینکه مطمئن بشید اون فایل باید با چی اجرا بشه، اولش رو ببینید. دستور head میتونه برای اینکار استفاده بشه.
head StartGUI.sh
باز هم فرض میکنیم داخل دایرکتوری هستیم که اسکریپت اونجا قرار داره.
سلام. با دستور گفته شده اجازه اجرای برنامه را نمیدهد.
/media/****/DS.SIMULIA.2022.LNX64/1# ./StartGUI.sh
bash: ./StartGUI.sh: Permission denied
احتمالا اسکریپت دسترسی اجرایی نداره، به اون دسترسی اجرایی بدید و دوباره امتحان کنید.
chmod +x StartGUI.sh
توی حالت بالا، باز هم فرض کردیم داخل جایی هستیم که اسکریپت قرار داره.