Що таке термінал, який я використовую в терміналі OS X?


0

Я ходжу в OS X Terminal, десь то люди просто дати мені команду grep, lsдеякі люди називають це shell script, деякі люди називають це unix shell. Я також отримав термін bash shell, Bash command. Отже, я хотів би це зрозуміти. Про що це все? Крім того , якщо я хочу , щоб освоїти grep, lsі побачити все керівництво по експлуатації shellперсоналу, який документ я повинен шукати? Оскільки я бачу, що деякі документи про команду Linux тощо мають ці функції. У MS DOS я можу мати список Dos Command. Чи є у терміналу ОС теж таке? Дякую.

Список команд Dos:

http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/ntcmds.mspx?mfr=true


Дивіться мою відповідь на це пов'язане питання superuser.com/questions/144666/…
Doug Harris

Відповіді:


1

Єдиний реальний спосіб пояснити всі ці терміни - це урок історії.

Тож ми починаємо прямо на початку, з UNIX у 70-х. Повернувшись до графічних інтерфейсів, командний рядок - це ваш єдиний інтерфейс до ОС. А враховуючи, що центр ОС називається «ядром», деяка гайка вирішила, що зовнішній шар повинен бути « оболонкою ». Страшні каламбури залишаються темою в UNIX.

І сьогодні Terminal.app по суті є просто імітацією фізичних терміналів, які використовувались для доступу до оболонок 40 років тому. Ми «відкриваємо термінал» замість того, щоб піднімати стілець, але це справді найсуттєвіша зміна.

Оскільки UNIX написали програмісти, спочатку для себе вони зробили цю оболонку програмованою. Ми називаємо ці сценарії - так само, як актор може слідувати сценарію, так і оболонка може слідувати « сценарію оболонки ». Зазвичай (сподіваємось) не повноцінні програми, але дуже корисний рівень автоматизації.

Більшість частин UNIX можна (і були замінені), включаючи оболонку. Отже, коли Стівен Борн написав заміну для оболонки Кена Томпсона, вона стала шкаралупою Борна - і Кена, оболонкою Томпсона . А з часом С-раковина (морська мушля? Дуже каламутна), Корнова оболонка , і далі, і далі.

З цього моменту " оболонка UNIX " стає загальним терміном для будь-якої оболонки UNIX. Хоча між ними є синтаксичні відмінності, майже будь-яка команда UNIX може бути записана в будь-яку оболонку UNIX. Отже, цей термін використовується, коли різниця просто не мала значення. Це достатньо специфічно, щоб уникнути плутанини з не-UNIX-середовищем (хтось пам'ятає DOS Shell ?), Але досить загальним, що нам не байдуже sh vs csh vs tsch vs ksh ...

Коли GNU прийшов на зміну Bourne Shell, вони назвали заміну Bourne-Again Shell - «ударом». Останній каламбур, обіцяю. Незважаючи на те, що це просто ще одна оболонка UNIX, вона в даний час є найбільш широко розповсюдженою - і була найпоширенішою протягом усіх років буму в Linux та Internet. Таким чином, ви почуєте "команда", "команда UNIX", "команда термінала" і "команда bash", що використовуються взаємозамінно, "оболонка UNIX" і "оболонка bash", що використовуються взаємозамінно і т. Д. Однак через синтаксичні відмінності між різними оболонок, коли вони говорять "bash script", вони зазвичай означають bash - і також "скрипт оболонки" зазвичай також означає "bash script", якщо не вказано інше.


0

Термінал OSX - це оболонка bash Linux. Це схоже на командний рядок DOS, але основна операційна система - Linux, а не DOS. Отже, використовувані команди різні, а синтаксис сценаріїв (пакетних файлів у DOS) також різний.

Список команд, доступних у терміналі OSX, доступний на веб-сайті SS64 . Для кожної з команд допомога доступна кількома способами. Ви можете почати, натиснувши кнопку Посилання на сайті ss64, а потім на OSX Man Pages . Це перенесе вас на сайт розробників Apple. У рядку терміналу введення "man" відобразить сторінки керівництва linux для цієї команди. Якщо ви введете команду, а потім натисніть на неї правою кнопкою миші, ви можете вибрати для того ж посібника.

Якщо вам потрібно написати сценарії, вам потрібно буде шукати bash. Довідковий посібник доступний на gnu.org . Також доступна версія PDF .


OS X не базується на Linux, він базується на BSD Unix. Linux, з іншого боку, по суті є клоном Unix.
Гордон Девіссон

@Gordon Ти, звичайно, маєш рацію. Хоча я не можу використовувати це виправдання, Linux сьогодні є майже синонімом для Unix.
hdhondt

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.