/ / how do duplikowania instancji bash - linux, bash, shell, ubuntu, fork

jak duplikować instancję bash - linux, bash, shell, ubuntu, fork

Piszę / debuguję powłokę w C, która działapętlę while (1) i za każdym razem, gdy zamykam powłokę, zamyka terminal, używając exit (), którego używałem do uruchamiania pliku wykonywalnego, więc ciągle muszę otworzyć kolejny terminal i wrócić do katalogu mojego obszaru roboczego w aby kontynuować pracę. Pomyślałem, że byłby to dobry powód, aby dowiedzieć się, jak mogę otworzyć kolejny proces terminalowy w moim bieżącym katalogu roboczym.

PS. Znam lepsze rozwiązanie, ze względu na wydajność, byłoby nauczyć się, jak zakończyć mój plik wykonywalny bez zamykania mojego terminala, ale to nie jest to, o co pytam.

Odpowiedzi:

2 dla odpowiedzi № 1

W powłoce bash wykonaj bash aby otworzyć podpowłokę przed uruchomieniem pliku wykonywalnego. Id est, uciekaj bash jako polecenie uruchamiane przed plikiem wykonywalnym. Tak więc, gdy twój plik wykonywalny zakończy się sam i jego powłoka, tylko podpowłok zostanie zakończona.

bash -c name_of_your_executable

Jak wspomniałeś w swoim pytaniu, lepszym rozwiązaniem jest zakończenie twojego pliku wykonywalnego bez kończenia powłoki.