Как заставить ksh работать так, как если бы она была вызвана как оболочка входа в систему (AIX)?

Это исторический артефакт, то есть, другими словами, возврат к прошлому. Исторически a.out означает «вывод ассемблера» .

a.out теперь является только именем файла, но раньше это был также формат файла исполняемого файла.

Исполняемый формат a.out в настоящее время редко поддерживается. Формат ELF имеет более широкое применение, но мы по-прежнему сохраняем старое имя для вывода по умолчанию компилятора C.

2
19.12.2016, 00:33
1 ответ

Если вы хотите изменить оболочку входа в систему, вы можете использовать chsh (сменить оболочку). Если вы просто хотите запустить экземпляр ksh , который ведет себя как оболочка входа в систему, то продолжайте читать.

ksh ведет себя как оболочка входа в систему, если первым символом аргумента 0 является - ; если вы используете ksh ( ksh93 или mksh , но не ksh88 или pdksh), zsh , ] yash или bash , тогда

exec -a -ksh /path/to/ksh [optional arguments]

заменит текущую оболочку экземпляром оболочки Korn, которая ведет себя как оболочка входа в систему. (Если вы используете bash или zsh , тогда exec -l / path / to / ksh короче и имеет тот же эффект.)

Если ни одна из этих оболочек недоступна, вы также можете попробовать perl :

perl -e 'exec {"ksh"} "-ksh"'
6
27.01.2020, 21:54

Теги

Похожие вопросы