8P by xguru 2020-04-28 | favorite | 댓글 1개

- iOS용 터미널 : 오픈소스,앱스토어 다운가능
- vim,ping,sftp,curl 등 내장
- Lua, Python, JavaScript, C/C++ 개발 및 실행 가능
- 폴더생성,이동,압축,수정 및 iOS 파일 공유 기능 지원
ㅤ→ 다른 앱 파일 열기, TeX/Python 실행, 결과 보내기 등
- iOS13 의 멀티 윈도우 기능 지원(한쪽창에서 편집하고 한쪽창에서 실행 등)
- pip install 가능 (순수 파이썬만)
- clang/clang++ 이 C/C++ 파일을 WebAssembly 로 컴파일해서 실행 가능 (Wasmer / wasi 내장)

실제로 sh,bash 같은 쉘을 iOS용으로 변환하는건 거의 불가능해서 터미널스러운 Text UI 를 구현했다고 보면 됩니다.

iOS는 system() 함수가 불가능 해서 ios_system() 을 만들어서 대체해서 사용합니다.
지원하는 쉘코맨드들은 https://github.com/holzschu/ios_system/blob/master/README.md 에 나와있습니다.
awk, curl, scp, sftp, tar, python, lua, TeX, ping, nslookup, telnet,
egrep, fgrep, grep, gzip, gunzip, cat, chflag, compress, cp, date, echo, env, link, ln, printenv, pwd, ed, sed, tar, uncompress, uptime, chgrp, chksum, chmod, chown, df, du, groups, id, ls, mkdir, mv, readlink, rm, rmdir, stat, sum, touch, tr, uname, wc, whoami

에뮬레이터로 실행하는 ish 하고는 약간 다른 접근방식 입니다.
iSH - iOS용 리눅스 쉘앱 https://news.hada.io/topic?id=1742
iSH 는 테스트 플라이트로만 설치가능해서 현재로선 a-Shell이 사용하기가 더 좋아요. 속도도 더 빠릅니다.

비슷한 iOS용 libterm 도 있습니다. https://libterm.app/
이거는 C 코드를 LLVM IR 포맷으로 컴파일 하네요

안드로이드로 비슷한 터미널은 Termux https://termux.com/