Я новачок в Linux, і будучи дислексичним, знаходжу роботу з командного рядка проблемою. Які посібники чи поради доступні для вирішення цього питання?
Я новачок в Linux, і будучи дислексичним, знаходжу роботу з командного рядка проблемою. Які посібники чи поради доступні для вирішення цього питання?
Відповіді:
Ви можете спробувати кілька речей, щоб покращити свій досвід роботи з командним рядком.
mkdir
після якої cd
).history
, ви можете переглянути історію команд, а потім використовувати номер історичної команди для повторного виконання команди (наприклад, повторити команду №352 з !352
). Псевдонім це просто h
для швидкого та легкого доступу.ls
Наприклад, коли ви використовуєте для переліку вмісту каталогів, наприклад, підкаталоги друкуються синім кольором, а назви файлів друкуються білим кольором, що спрощує їх розрізнення. Для інших прикладів ознайомтеся з багатьма персоналізаціями, якими поділилися люди. Деякі впевнені, варто спробувати "як є". Один хороший вихідний пункт - популярне сховище дотфілів Awesome .!352
замість history 352
innit?
Я спробую всебічну відповідь. Якщо я щось залишив, будь ласка, прокоментуйте, і я додам це.
Тут заповнення вкладки - це ваша найбільша допомога. Натискання Tabзавершить команду, наскільки це однозначно ідентифікується. Натиснувши Tabдвічі, ви побачите список варіантів. Набравши достатньо символів, щоб визначити, який варіант ви хочете, і натискання Tabще раз завершить його. Це також працює з іменами шляху / файлів.
Наприклад, скажімо, у мене є користувач на ім’я Пол, і він має файл text123.txt та text124.txt у своїй папці завантажень:
Я міг би набрати / год, Tabі баш дасть мені /home/
. Потім наберіть P Tabі отримайте /home/Paul/
. І продовжуйте таким чином, поки я не отримаю повний файл і шлях.
Автозаповнення також приймає підказки *
та ?
. ?
відповідає одному символу та *
відповідає всім символам (або жодним). Використовуючи наведений вище приклад, я міг набрати:
/h*/P*/Dow*/t*4*
тоді Tabі баш дасть мені /home/Paul/Downloads/text124.txt
. Якщо я впевнений, що я відповідають правильному файлу, я можу просто натиснути, Enterщоб виконати команду, розгорнувши її спочатку.
Деякі поширені посилання на каталог:
~
для вашого домашнього каталогу...
батьківський каталог.
поточний каталог; на випадок, якщо ви хочете бути абсолютно впевненим, що bash виглядає в потрібному каталозі.Клавіші ↑зі ↓стрілками вгору та вниз стрілками дозволяють переходити по списку нещодавно використаних команд. Натисніть Ctrl+, Gщоб вийти з режиму пошуку історії. Alt+ .повторює останній аргумент попередньої команди.
Bash дозволяє вказувати псевдоніми. Якщо ви виявите, що ви часто вводите команду в один і той же спосіб, ви можете додавати власні псевдоніми, редагуючи ~/.bashrc
та додаючи рядки на зразок цього:
alias agi='apt-get install'
alias mkdri='mkdir'
Потім перейдіть, щоб активувати їх.
~
не єalias
, це досить розширена шляхом , bash
як описано в РОЗШИРЕННЯ / тильди вman bash
- ~
розширюється до $HOME
, ~+
в $PWD
і ~-
до $OLDPWD
, наприклад. Насправді ви можете встановити, наприклад, alias ~='cd ~'
і дуже корисно швидко повернутися до домашнього режиму, але це абсолютно відрізняється від (і не шкодить) розширення.
man bash
є цілий розділ EXPANSION
... Ви вже висвітлили трохи розширення імені шляху.
..
та .
; наприклад, cd ..
фактично видаляє останній сегмент шляху з поточного робочого каталогу, а не додаючи ..
сегмент.
Оболонка Zsh (або принаймні версія, яку я використовую, Oh-my-ZSH ) має функцію, яка виправляє вас, якщо ви робите невеликі друкарські помилки в назвах команд та файлів:
$ pyhton scirpt.py
zsh: correct 'pyhton' to 'python' [nyae]? y
zsh: correct 'scirpt.py' to 'script.py' [nyae]? y
...
Ви можете ввімкнути його за допомогою наступного рядка у вашому .zshrc
:
# Uncomment the following line to enable command auto-correction.
ENABLE_CORRECTION="true"
mr fr- ./ -oe--rvoeorrpne-st
->zsh: automatically correcting to rm -rf / --no-preserve-root
mv file1 file1.old
як це виправить друге ім'я файлу на перше, зробивши його неоперативним.
Ви можете спробувати використовувати шрифт відкритого дислексика у своєму терміналі. Це може допомогти при читанні тексту. Це припущення, що ви використовуєте термін ubuntu за замовчуванням, який, я сподіваюся, такий же, як і термінал GNOME.
sudo apt install fonts-opendyslexic
.
Щоб завершити відповідь @pomsky, я хотів би додати кілька пунктів:
Дізнайтеся, як автоматизувати речі, особливо дізнайтеся, як for
працюють петлі, як read
працює, як if
працює, що є [ ]
і [[ ]]
скористайтеся неофіційним строгим режимом bash , адже коли сценарій дійсний, простіше не помилитися.
якщо ви можете, встановіть пакет bash-завершення (може містити різні назви відповідно до версій)
Використовуйте rm
за допомогою -i
перемикача в небезпечних ситуаціях (наприклад, з sudo
), або, можливо, встановіть і використовуйте rmtrash
(що буде виносити сміття в сміття)
Використовуйте cp
за допомогою -n
перемикача, який не буде перезаписувати наявні файли при копіюванні. (Звичайно, корисніше при рекурсивному копіюванні)
Дізнайтеся, як використовувати ~/.bashrc
файл, це може зробити $PS1
змінну більш зрозумілою для вас.
І, можливо, найважче, якщо ти молодий:
Спробуйте трохи краще дізнатися про сучасні та загальні інструменти того, що ви робите.
$CXXFLAGS
у вашому ~/.bashrc
. (Наприклад: export CXXFLAGS=" -std=c++17 -fmax-errors=1 -Wall -Wextra -pedantic -Werror "
відповідно до вашої версії c ++, звичайно, тому я думаю, що c ++ 11 для ubuntu), тоді компілюйте make main.cpp
і ваші параметри будуть перенесені. Зауважте, що цей набір варіантів досить суворий: все правильне та стандартне буде розглядатися як помилка та заважає вам збиратись.Спробуйте "FISH" дружню інтерактивну оболонку. Доступно у репостах.
Раніше я боровся з командним рядком за допомогою BASH. Риба запам'ятовує всі останні команди і пропонує завершити. sudo apt встановити рибу, потім у тип bash; риба. Якщо вам це подобається, знайдіть інструкції, як зробити його оболонкою за замовчуванням. Є в наявності інші снаряди; РИБА - мій вибір. Як тільки ви почнете, вам це може сподобатися.
Я дізнався , що я був дислексією після будучи інженером Unix і досвідчений користувач оболонки в протягом багатьох років на різних платформах (Linux, AIX і Solaris).
Дислексія в різній мірі впливає на різних людей, тому припущення, що "ми бачимо речі не в порядку" може бути надмірним спрощенням і розчаруванням, якщо це не вплине на вас таким чином - я фактично вважаю шрифт терміналів фіксованої ширини за замовчуванням надзвичайно читабельним ( біло-чорне мені здається приємним)
Оболонки важко засвоїти з великою кількістю абревіатур та неінтуїтивних умовностей для навігації, що часто ускладнює навчання людям, які насолоджуються простими словами з регулярними зразками.
Зараз я розумію, що більшість дислектиків вчиться і запам'ятовує з досвіду з перших рук. Ми дуже бідні в навчанні, що вивчає рот, або споживаємо велику кількість багатослівної теорії. Однак, як тільки ми засвоїли теорію за допомогою програми, вона, як правило, швидко тримається з глибоким внутрішнім розумінням. З цією метою зосередьтеся на пошуку прикладів оболонок та їх випробуванні, ввівши їх вручну та зрозумівши, що робить кожен рядок. Експериментуйте, ламайте речі, будьте усю ніч, виправляючи це.
З часом ви запам’ятаєте все більше і більше команд та точкових зразків у тому, як розробники реалізували свої програми, які можна застосувати до наступної команди. Однак не всі команди дотримуються одних і тих же умов під час передачі аргументів / параметрів, тому для вивчення схожих команд знадобиться певний час.
Як і будь-хто інший, через кілька років він стане другою природою. Однак з часом ви можете отримати перевагу дислексики, коли інтуїтивно знаєте, як розв’язувати рішення та виконувати складний першопричинний аналіз, використовуючи свою 6-ту чуттєву здатність виявляти шаблони або розриви шаблонів.
За винятком заповнення вкладок та ключових порад, я вважаю, що більшість відповідей лише зроблять досвід ще більш вражаючим. Ігноруйте їх. Спрощення є ключовим
Є інструмент, який сидить між жартом і безцінним помічником.
https://github.com/nvbn/thefuck
Ви можете спробувати його на додаток до інших рекомендацій у цій темі. Основна ідея полягає в тому, що коли ви будете писати щось і отримувати невідому команду чи що завгодно, цей інструмент виправить і повторно виконає.
Це не срібна куля, але, можливо, варто її спробувати.