Це питання двопартійне. Вибач за те. Перше запитання: Якщо я використовую bash script ( .sh) і змінюю каталоги в межах цього сценарію, то пізніше, поки скрипт запущений, і я його вбиваю, я опиняюсь в тому каталозі, в якому я запустився. Однак, коли я намагаюся це зробити в .batсценарії, і я використовую chdirзамість цього cd, а потім вбиваю процес, я перебуваю в каталозі, в який я хотів chdirби. Приклад:
#runscript.sh
cd seconddir/thirddir/
# run some ongoing process here
----------------------------------
usr/firstdir> ./runscript.sh
[Ctrl + C]
usr/firstdir>
Потім у другому випадку:
#runscript.bat
chdir seconddir/thirddir/
# run some ongoing process here
----------------------------------
usr/firstdir> runscript.bat
[Ctrl + C]
usr/firstdir/thirddir>
Чому це відбувається? Чи можу я змусити .batсценарій повернутися назад після того, як процес буде вбито Ctrl + c?
C:\folder1\folder2там, де ви використовуєте шлях у стилі Linux. Також сценарії sh також не є поширеними у Windows, хоча і неможливо. З цієї причини здавалося набагато більш імовірним, що ви, можливо, використовуєте linux у поєднанні з вином. Тож тому я запитав.