Поради щодо схвалення командного рядка [закрито]


29

Коли я вперше перейшов з Windows на Ubuntu, напевно, найстрашніше, що мені довелося зробити, це використовувати командний рядок.

Команди введення тексту - це чужорідне враження, коли ви лише коли-небудь звикли вказувати та клацати.

Коли я розмовляю з новими користувачами Ubuntu, їм часто неприємно з ідеєю спілкуватися безпосередньо зі своїм комп'ютером.

Чи є простий та дружній посібник, який допоможе новим користувачам ознайомитися з командним рядком?

Чи є які-небудь поради, щоб полегшити цей досвід чи приємніше?


4
Для чого це варто, Ubuntu намагається (принаймні, важче, ніж будь-який інший дистрибутив Linux), щоб не змусити вас використовувати командний рядок, якщо цього не хочете. Але завжди знайдуться речі, які набагато простіше / швидше зробити в командному рядку, ніж у графічному інтерфейсі. Тож добре дізнатися про це (і гарне запитання).
David Z

Відповіді:


17

Якщо ви шукаєте хорошого керівництва для вивчення командного рядка, мій улюблений - LinuxCommand.org

Посібник покаже вам основи командного рядка і навіть допоможе вам написати корисні сценарії оболонки.

При цьому більшості користувачів не потрібно буде використовувати командний рядок протягом більшості щоденних операцій. Я не думаю, що командний рядок повинен відштовхувати користувачів від переходу на Ubuntu. Але як тільки ви дізнаєтесь силу командного рядка, ви не зможете жити без нього!


15

Ось декілька загальних команд для управління файловою системою:

  • cp [src] [dest] - копіює src до dest
  • mv [src] [dest] - переміщує src до dest (також використовується для перейменування)
  • cd [dir] - змінює поточний каталог на dir
  • pwd - друкує поточний каталог
  • cat [file] - друкує вміст файлу на екран
  • rm [file]- видаляє файл 1
  • rmdir [dir] - видаляє порожній каталог

Префіксація будь-якої з команд sudoвикликає виконання команди як кореневого користувача.

1 - не вводити, sudo rm -rf /оскільки це видалить файлову систему


5
Хе, +1 за попередження про судо: :)
Ніколас Найт,

2
Не забувайте зауваження про сумнозвісний forkbomb ": () {: |: &} ;:", який по суті формує нескінченну кількість нових процесів і поступово уповільнює систему, поки у неї не вичерпаються ресурси, що вимагають перезавантаження системи. Для отримання додаткової інформації див. En.wikipedia.org/wiki/Fork_bomb .
Еван Плейс

12

1) Завершення вкладки:

Гігантська економія часу. Якщо ви вводите команду, вам потрібно лише набрати достатньо команди, щоб надати початковий сегмент, який можна розширити лише одним способом, а потім один раз натиснути TAB, щоб розгорнути свій початковий сегмент на всю команду. Так, наприклад, у моїй системі umo TABрозширюється до umount. (У моїй системі, оскільки початкові сегменти можна розширювати лише одним способом, це функція того, що ви встановили тощо). Якщо ви не введете достатньо, щоб зробити завершення однозначним, TAB не розшириться, але другий TAB відобразить a список можливих доповнень. Отже, у моїй системі um TAB TABвиходить:

umask       umax_pp     umount      umount.hal

Завершення вкладки також працює на шляхах: cd /home/me/docs/reallylo TABякщо вона унікальна, то вона розшириться cd /home/me/docs/reallylongdirnameі, якщо не є унікальною, запропонує список продовжень кандидатів, як umзазначено вище.

2) man some-commandабо some-command --helpабо some-command -h:

Якщо ви не можете згадати, як працює команда, ви можете отримати документацію прямо в оболонці. manзазвичай надає найбільш детальну інформацію. Зазвичай один або обидва --helpта -hаргументи команди дають короткий підсумок.

3) head:

man some-commandприймає термінал і заважає вам вводити команди під час відображення тексту "man". man some-command | headпокаже перші 10 рядків. man some-command | head -nвідобразиться перші п рядків. В обох випадках ви отримуєте своє запит назад, так що ви можете мати текстовий текст на екрані під час введення вашої команди.


Коли я користуюсь man some-command, людина дозволяє мені прокручувати сторінки вгору і вниз. Це не звичайно?
Майкл Креншо

@ mac9416: Дійсно. Я ніколи раніше цього не пробував: - [Змінив відповідь, щоб врахувати це. Спасибі!
vanden

Так, manвикористовується пейджер (як правило less). Якщо ви хочете переглянути файл аналогічним чином, введіть less somefile. Якщо ви звикли vim, ви можете використовувати jkклавіші для прокрутки.
Умань

Чесно кажучи, заповнення вкладки доступне не у всіх оболонках.
Натан Осман

@ Джордж Едісон: Досить правда. Але якщо мова йде про нового користувача, про який йде мова (як це йдеться в запитанні), вони не будуть дуже ймовірно, що вони змінили оболонку з типового і, таким чином , матимуть завершення вкладки.
vanden

7

Перейти на zsh!

Незважаючи на те, що він дуже схожий на bash, він має безліч приємних додаткових функцій поза коробкою (як, наприклад, корекція помилки помилок, навіть у попередньому компоненті шляху або корисний віджет для виклику довідки для поточної команди (через run-help); Після натискання клавіші ESC-h я натискаю клавішу mplayer, і вона відкриває чоловічу сторінку. Після закриття я повернувся до старого рядка)).

Я рекомендую наступну книгу, яка охоплює zsh, bash та деякі інші оболонки:
Від Bash до Z Shell: Підкорення командного рядка . Хоча йому вже кілька років, я радий, що це не відвернуло мене від покупки. Ця рекомендація також дотримується, якщо ви не хочете перейти на zsh.

Я вже декілька років використовую командний рядок (локально та через SSH), лише нещодавно я перейшов на zsh (здебільшого через моє користувацьке баш-підказку, яке не сумісне). Ось мій zsh config (інтегрований у моє сховище dotfiles ).

Ви можете використовувати chsh -s /bin/zshдля перемикання вашої оболонки (через / etc / passwd) або просто викликати її з вашої поточної оболонки, тобто введіть zshу своєму записі bash (швидше за все, вам доведеться встановити її спочатку ( sudo apt-get install zsh).


5

"apropos" (або еквівалентно: "man -k"), щоб знайти команду щось робити.

$ apropos [my query]

Наприклад, щоб знайти команду для копіювання файлів:

$ apropos copy

перелічить купу команд, з яких

cp (1) - copy files and directories

є один.

"cp" - це команда, а "1" - розділ в посібниках, де він відображається. Розділ 1 - загальні користувацькі команди (інші розділи містять такі речі, як виклики бібліотеки, які вас не зацікавлять). Щоб обмежити пошук лише розділом 1, використовуйте:

$ apropos -s1 [my query]

Щоб потім дізнатися більше про команду, використовуйте "man". напр

$ man cp

+1 за те, що був першим, хто згадав man. Браво!
ятанізм

4

Спробуйте використовувати рибу

fish - зручна оболонка командного рядка для UNIX-подібних операційних систем, таких як Linux.

Крім усього іншого, він має більш розвинене завершення вкладок, ніж баш, що може бути дуже корисним під час навчання.

alt текст

https://www.pablumfication.co.uk/2010/02/26/fish/

http://fishshell.org/index.php


1
Я люблю функцію пошуку історії. Просто введіть що-небудь, натисніть клавішу зі стрілкою вгору, і ви шукаєте у своїй історії ті самі слова. Прекрасна економія часу.
Хав'єр Рівера

посилання на fishshell.org застаріле. fishshell.com - новий.
NES

2

history | grep SOMETHING - Знаходить команду, яку ви використовували до цього, містить SOMETHING.

fortune - :-)


2
Для цього я використовую Ctrl+R SOMETHING(з тією різницею, що це дає останнє явище). Повторіть, Ctrl+Rщоб знайти більше випадків SOMETHINGв історії команд.
Берт Ван Врекем

2

Щоб дізнатися, як використовувати команду, додайте пробіл, а потім "--help" до кінця - це розповість вам, як її використовувати, і дає список параметрів.

напр

cp --help

Попередження, це працює не з усіма командами!
SilverWolf - Відновіть Моніку


2

Рекомендую використовувати CLI Companion :

CLI Companion - це інструмент для зберігання та запуску команд терміналів з графічного інтерфейсу. Люди, незнайомі з Терміналом, знайдуть компанію CLI корисним способом ознайомитись з Терміналом та розблокувати його потенціал. Досвідчені користувачі можуть використовувати CLI Companion для зберігання свого широкого списку команд у списку для пошуку.

введіть тут опис зображення

Ви отримуєте це, запустивши:

sudo add-apt-repository ppa:clicompanion-devs/clicompanion-nightlies
sudo apt-get update
sudo apt-get install clicompanion

Якщо ви не хочете додати PPA, спробуйте цей файл за 12.04 (остання версія 1.1-6, випущена 2012-04-14 - перевірте цю сторінку на новіші версії.) - або видаліть PPA після встановлення з sudo add-apt-repository -r ppa:clicompanion-devs/clicompanion-nightlies.


1

Знайдіть книгу Ubuntu з хорошим індексом командного рядка, нульовим і розмістіть її біля комп'ютера. Примушуйте його використовувати. Хорошим ресурсом є книга "Команди Ubuntu Linux Toolbox 1000+", охоплює все, що вам потрібно знати (http://www.amazon.com/Ubuntu-Linux-Toolbox-Commands-Debian/dp/0470082933)

Однак якщо ви не запускаєте сервер, на робочому столі Ubuntu майже все доступне з графічним інтерфейсом.


0

Я дізнався багато про те, як використовувати командний рядок і комфортно працювати в ньому, прочитавши The Bash Cookbook від O'Reilly та Associates. Це книга про сценарії Баша, але шматки кулінарної формати готують її дуже доступною. Як побічну перевагу, якщо ви думаєте, "Боже, я б точно хотів зробити X, але я не знаю як", ви можете використовувати зміст, щоб шукати X (і Y і Z для цього питання) і отримайте гарне уявлення про те, як це зробити (і гідне пояснення того, як це працює з покажчиками на інші рецепти та ресурси, які можуть ще більше розширити ваше розуміння).


0

Я читав офіційну книгу сервера Ubuntu, (2-е видання), щоб вивчити системне адміністрування, і не тільки я став більш досвідченим у використанні командного рядка, але і почав вивчати внутрішню роботу самої ОС.

Використання Ubuntu Server Edition допомагає мені легше вивчити командний рядок, тому що у мене немає графічного інтерфейсу.

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