আমি প্রথম ত্রুটিতে বাশ স্ক্রিপ্ট বন্ধset -e
করতে ব্যবহার করি ।
আমি যদি কমান্ডটি ব্যবহার না করি তবে সমস্ত কাজ ঠিক আছে &&
:
$ cat script
set -e
cd not_existing_dir && echo 123
echo "I'm running! =P"
$
$ ./script
./script: line 2: cd: not_existing_dir: No such file or directory
I'm running! =P
$
সাথে তুলনা করা:
$ cat script
set -e
cd not_existing_dir
echo "I'm running! =P"
$
$ ./script
./script: line 2: cd: not_existing_dir: No such file or directory
$
প্রথম উদাহরণটি এখনও প্রতিধ্বনিত হয় I'm running!
, তবে দ্বিতীয়টি তা দেয় না। কেন তারা অন্যরকম আচরণ করে?
UPD। অনুরূপ প্রশ্ন: /programming/6930295/set-e-and-short-tests
cd
কমান্ডের পরে থামবে
set -e
।