/l3/users/slm/2018-12-minsk-aws/student05.BigClassRoom/user :1 :2 |
|
$sudo -s
root@m5:/home/user# pip install awscli bash: pip: command not found root@m5:/home/user# exit exit |
$sudo pip install awscli
Collecting awscli Downloading https://files.pythonhosted.org/packages/46/f9/9cdf9450b8fbb7f06aa1af2581dc3f261ef965185f0a45f4aaa008351e81/awscli-1.16.78-py2.py3-none-any.whl (1.4MB) 100% |████████████████████████████████| 1.4MB 380kB/s Collecting colorama<=0.3.9,>=0.2.5 (from awscli) Downloading https://files.pythonhosted.org/packages/db/c8/7dcf9dbcb22429512708fe3a547f8b6101c0d02137acbd892505aee57adf/colorama-0.3.9-py2.py3-none-any.whl Collecting rsa<=3.5.0,>=3.1.2 (from awscli) Downloading https://files.pythonhosted.org/packages/e1/ae/baedc9cb175552e95f3395c43055a6a5e125ae4d48a1d7a924baca83e92e/rsa-3.4.2-py2.py3-none-any.whl (46kB) 100% |████████████████████████████████| 51kB 944kB/s Collecting s3transfer<0.2.0,>=0.1.12 (from awscli) Downloading https://files.pythonhosted.org/packages/d7/14/2a0004d487464d120c9fb85313a75cd3d71a7506955be458eebfe19a6b1d/s3transfer-0.1.13-py2.py3-none-any.whl (59kB) 100% |████████████████████████████████| 61kB 903kB/s Collecting botocore==1.12.68 (from awscli) Downloading https://files.pythonhosted.org/packages/00/59/28cc07ee9486402d3d016314e7895b763489015a5d4a234d658022095650/botocore-1.12.68-py2.py3-none-any.whl (5.2MB) |
$aws configure
AWS Access Key ID [None]: user5@chubin AWS Secret Access Key [None]: ^C |
$aws configure
AWS Access Key ID [None]: ^C |
$ls ~/.aws/
ls: cannot access '/home/user/.aws/': No such file or directory |
$sudo apt install awscli
Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: docutils-common python3-botocore python3-colorama python3-dateutil python3-docutils python3-jmespath python3-pyasn1 python3-pygments python3-roman python3-rsa python3-s3transfer Suggested packages: docutils-doc texlive-lang-french texlive-latex-base texlive-latex-recommended doc-base ttf-bitstream-vera The following NEW packages will be installed: awscli docutils-common python3-botocore python3-colorama python3-dateutil python3-docutils python3-jmespath python3-pyasn1 python3-pygments python3-roman python3-rsa python3-s3transfer 0 upgraded, 12 newly installed, 0 to remove and 0 not upgraded. Need to get 2,805 kB of archives. After this operation, 26.9 MB of additional disk space will be used. Do you want to continue? [Y/n] n Abort. |
$ls
1.json Desktop Downloads id_rsa.pub Music Public Videos aws Documents github.txt microsoft.gpg Pictures Templates |
$sudo ls /root/
credentials.csv lilalo-install setpasswd |
$hist
hist_append history |
$history | grep credentials.csv
143 sudo cat /root/credentials.csv 146 sudo cat /root/credentials.csv | tr , '\n' 245 sudo cat /root/credentials.csv 246 history | grep credentials.csv |
$sudo cat /root/credentials.csv | tr , '\n'
user5 k!oDh|!SQ%Ba AKIAJKUHEIKJ53Q5J73A FYYm7Jky8U5oQXy2B4N/xCMdHHgeZmQfWiA6RZfX https://chubin.signin.aws.amazon.com/console |
$clear
|
$aws ec2 describe-instances
Could not connect to the endpoint URL: "https://ec2.eu-west-1a.amazonaws.com/" |
$cat .aws/
cat: .aws/: Is a directory |
$ls .aws/
config credentials |
$cat .aws/config
[default] output = json region = eu-west-1a |
$cat .aws/credentials
[default] aws_access_key_id = AKIAJKUHEIKJ53Q5J73A aws_secret_access_key = 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 |
$cat .aws/credentials
cat: .aws/credentials: No such file or directory |
$aws ec2 describe-instances
Could not connect to the endpoint URL: "https://ec2.eu-west-1a.amazonaws.com/" |
$aws iam list-users
Could not connect to the endpoint URL: "https://iam.eu-west-1a.amazonaws.com/" |
$aws help
AWS() AWS() NAME aws - DESCRIPTION The AWS Command Line Interface is a unified tool to manage your AWS services. SYNOPSIS aws [options] <command> <subcommand> [parameters] Use aws command help for information on a specific command. Use aws help topics to view a list of available help topics. The synopsis for ... The CA certificate bundle to use when verifying SSL certificates. Over- rides config/env settings. --cli-read-timeout (int) The maximum socket read time in seconds. If the value is set to 0, the socket read will be blocking and not timeout. --cli-connect-timeout (int) The maximum socket connect time in seconds. If the value is set to 0, the socket connect will be blocking and not timeout. AVAILABLE SERVICES o acm |
$aws --version
aws-cli/1.16.78 Python/2.7.13 Linux/4.9.0-8-amd64 botocore/1.12.68 |
$aws ec2 describe-regions --output table
Could not connect to the endpoint URL: "https://ec2.eu-west-1a.amazonaws.com/" |
$cat .aws/config
[default] region = eu-west-1 output = json |
$aws ec2 describe-instances | jq
{ "Reservations": [ { "Instances": [ { "Monitoring": { "State": "disabled" }, "PublicDnsName": "ec2-52-19-122-40.eu-west-1.compute.amazonaws.com", "State": { ... }, "AmiLaunchIndex": 0 } ], "ReservationId": "r-0c0e59eec99ee07d6", "Groups": [], "OwnerId": "886677986286" } ] } |
$aws ec2 describe-instances | jq [0]
[ 0 ] |
$aws ec2 describe-instances | jq .[0]
jq: error (at <stdin>:1831): Cannot index object with number |
$aws ec2 describe-instances | jq .[0].name
jq: error (at <stdin>:1831): Cannot index object with number |
$aws ec2 describe-instances | jq .[]
[ { "Instances": [ { "Monitoring": { "State": "disabled" }, "PublicDnsName": "ec2-52-19-122-40.eu-west-1.compute.amazonaws.com", "State": { "Code": 16, ... "Configured": false }, "AmiLaunchIndex": 0 } ], "ReservationId": "r-0c0e59eec99ee07d6", "Groups": [], "OwnerId": "886677986286" } ] |
$aws ec2 describe-instances | jq .[]
[ { "Instances": [ { "Monitoring": { "State": "disabled" }, "PublicDnsName": "ec2-52-19-122-40.eu-west-1.compute.amazonaws.com", "State": { "Code": 16, ... "Configured": false }, "AmiLaunchIndex": 0 } ], "ReservationId": "r-0c0e59eec99ee07d6", "Groups": [], "OwnerId": "886677986286" } ] |
$aws ec2 describe-instances | jq .[1]
jq: error (at <stdin>:1831): Cannot index object with number |
$aws ec2 describe-instances | jq .[0]
jq: error (at <stdin>:1831): Cannot index object with number |
$aws ec2 describe-instances | jq .Reservations
[ { "Instances": [ { "Monitoring": { "State": "disabled" }, "PublicDnsName": "ec2-52-19-122-40.eu-west-1.compute.amazonaws.com", "State": { "Code": 16, ... "Configured": false }, "AmiLaunchIndex": 0 } ], "ReservationId": "r-0c0e59eec99ee07d6", "Groups": [], "OwnerId": "886677986286" } ] |
$aws ec2 describe-instances --otput table
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters] To see help text, you can run: aws help aws <command> help aws <command> <subcommand> help Unknown options: --otput, table |
$aws ec2 describe-instances --output table
------------------------------------------------------------------------------------- | DescribeInstances | +-----------------------------------------------------------------------------------+ || Reservations || |+---------------------------------+-----------------------------------------------+| || OwnerId | 886677986286 || || ReservationId | r-0ebb430cd3f1917cf || |+---------------------------------+-----------------------------------------------+| ||| Instances ||| ||+------------------------+------------------------------------------------------+|| ... |||| State |||| |||+-------------------------------+---------------------------------------------+||| |||| Code | 16 |||| |||| Name | running |||| |||+-------------------------------+---------------------------------------------+||| |||| Tags |||| |||+-----------------------------+-----------------------------------------------+||| |||| Key | Name |||| |||| Value | user3-noIP |||| |||+-----------------------------+-----------------------------------------------+||| |
$aws ec2 describe-instances --output text
RESERVATIONS 886677986286 r-0ebb430cd3f1917cf INSTANCES 0 x86_64 False True xen ami-09693313102a30b2c i-080515adaa7956592 t2.micro user10 2018-12-19T09:56:26.000Z ip-10-2-1-85.eu-west-1.compute.internal 10.2.1.85 ec2-52-19-122-40.eu-west-1.compute.amazonaws.com 52.19.122.40 /dev/xvda ebs True subnet-0d00d8b5d01e66e35 hvm vpc-04540e242cdfb35de BLOCKDEVICEMAPPINGS /dev/xvda EBS 2018-12-19T09:56:13.000Z False attached vol-05a6d57a3a6c9ffa2 CAPACITYRESERVATIONSPECIFICATION open CPUOPTIONS 1 1 HIBERNATIONOPTIONS False MONITORING disabled NETWORKINTERFACES Primary network interface 0a:a3:3d:87:83:46 eni-04bd6dd286a442369 886677986286 ip-10-2-1-85.eu-west-1.compute.internal 10.2.1.85 True in-use subnet-0d00d8b5d01e66e35 vpc-04540e242cdfb35de ASSOCIATION amazon ec2-52-19-122-40.eu-west-1.compute.amazonaws.com 52.19.122.40 ... HIBERNATIONOPTIONS False MONITORING disabled NETWORKINTERFACES Primary network interface 0a:1d:59:e6:36:62 eni-0a3b551b95295909d 886677986286 ip-10-1-1-251.eu-west-1.compute.internal 10.1.1.251 True in-use subnet-060d8c5c243f86664 vpc-08b950cd8140c7403 ATTACHMENT 2018-12-19T09:42:51.000Z eni-attach-008171fffb029232d True 0 attached GROUPS sg-0c6d9a080b0be281c launch-wizard-1 PRIVATEIPADDRESSES True ip-10-1-1-251.eu-west-1.compute.internal 10.1.1.251 PLACEMENT eu-west-1a default SECURITYGROUPS sg-0c6d9a080b0be281c launch-wizard-1 STATE 16 running TAGS Name user3-noIP |
$aws ec2 describe-instances | jq
{ "Reservations": [ { "Instances": [ { "Monitoring": { "State": "disabled" }, "PublicDnsName": "ec2-52-19-122-40.eu-west-1.compute.amazonaws.com", "State": { ... }, "AmiLaunchIndex": 0 } ], "ReservationId": "r-0c0e59eec99ee07d6", "Groups": [], "OwnerId": "886677986286" } ] } |
$aws ec2 describe-instances | jq .Reservations.[0]
jq: error: syntax error, unexpected '[', expecting FORMAT or QQSTRING_START (Unix shell quoting issues?) at <top-level>, line 1: .Reservations.[0] jq: 1 compile error |
$aws ec2 describe-instances | jq .Reservations[0]
{ "Instances": [ { "Monitoring": { "State": "disabled" }, "PublicDnsName": "ec2-52-19-122-40.eu-west-1.compute.amazonaws.com", "State": { "Code": 16, "Name": "running" ... "HibernationOptions": { "Configured": false }, "AmiLaunchIndex": 0 } ], "ReservationId": "r-0ebb430cd3f1917cf", "Groups": [], "OwnerId": "886677986286" } |
$aws ec2 describe-instances | jq .Reservations[0].Instances[0]
{ "Monitoring": { "State": "disabled" }, "PublicDnsName": "ec2-52-19-122-40.eu-west-1.compute.amazonaws.com", "State": { "Code": 16, "Name": "running" }, "EbsOptimized": false, ... ], "Architecture": "x86_64", "RootDeviceType": "ebs", "RootDeviceName": "/dev/xvda", "VirtualizationType": "hvm", "HibernationOptions": { "Configured": false }, "AmiLaunchIndex": 0 } |
$aws ec2 describe-instances | jq .Reservations[0].Instances[0].InstanceId
"i-080515adaa7956592" |
$aws ec2 describe-instances help
DESCRIBE-INSTANCES() DESCRIBE-INSTANCES() NAME describe-instances - DESCRIPTION Describes one or more of your instances. If you specify one or more instance IDs, Amazon EC2 returns information for those instances. If you do not specify instance IDs, Amazon EC2 returns information for all relevant instances. If you specify an instance ID that is not valid, an error is returned. If you specify an instance that you do not own, it is not included in the returned ... Command: aws ec2 describe-instances --filters "Name=instance-type,Values=m1.small,m1.medium" "Name=availability-zone,Values=us- west-2c" The following JSON input performs the same filtering. Command: aws ec2 describe-instances --filters file://filters.json filters.json: [ { "Name": "instance-type", |
$com
comm compare compare-im6.q16 complete compose composite-im6 command compare-im6 compgen compopt composite composite-im6.q16 |
$co
code colprof compare compose conjure-im6.q16 corelist codepage colrm compare-im6 composite continue col column compare-im6.q16 composite-im6 convert colcrt colverify compgen composite-im6.q16 convert-im6 collink comm complete conjure convert-im6.q16 colormgr command compopt conjure-im6 coproc |
$co
code colprof compare compose conjure-im6.q16 corelist codepage colrm compare-im6 composite continue col column compare-im6.q16 composite-im6 convert colcrt colverify compgen composite-im6.q16 convert-im6 collink comm complete conjure convert-im6.q16 colormgr command compopt conjure-im6 coproc |
$aws
Display all 171 possibilities? (y or n) acm dax kafka redshift acm-pca deploy kinesis rekognition alexaforbusiness devicefarm kinesisanalytics resource-groups amplify directconnect kinesisanalyticsv2 resourcegroupstaggingapi apigateway discovery kinesisvideo robomaker apigatewaymanagementapi dlm kinesis-video-archived-media route53 apigatewayv2 dms kinesis-video-media route53domains application-autoscaling ds kms route53resolver appmesh dynamodb lambda s3 ... cognito-idp history organizations transcribe cognito-sync iam pi transfer comprehend importexport pinpoint translate comprehendmedical inspector pinpoint-email waf configservice iot polly waf-regional configure iot1click-devices pricing workdocs connect iot1click-projects quicksight workmail cur iotanalytics ram workspaces datapipeline iot-data rds xray datasync iot-jobs-data rds-data |
$vi .bash
|
$vi .bashrc
|
$complete -C aws_completer aws
|
$aws ec2 describe-in
describe-instance-attribute describe-instances describe-internet-gateways describe-instance-credit-specifications describe-instance-status |
$aws ec2 describe-instance --query "Reservations[*].Instances[*].[ImageId,Tags[*]]"
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters] To see help text, you can run: aws help aws <command> help aws <command> <subcommand> help aws: error: argument operation: Invalid choice, valid choices are: accept-reserved-instances-exchange-quote | accept-transit-gateway-vpc-attachment accept-vpc-endpoint-connections | accept-vpc-peering-connection advertise-byoip-cidr | allocate-address allocate-hosts | apply-security-groups-to-client-vpn-target-network ... stop-instances | terminate-client-vpn-connections terminate-instances | unassign-ipv6-addresses unassign-private-ip-addresses | unmonitor-instances update-security-group-rule-descriptions-egress | update-security-group-rule-descriptions-ingress withdraw-byoip-cidr | wait help Invalid choice: 'describe-instance', maybe you meant: * describe-instances * describe-instance-status * describe-fleet-instances |
$aws ec2 describe-instances --query "Reservations[*].Instances[*].InstanceId[*]"
[ [], [], [], [], [], [], [], [], [], [], [], [], [], [], [] ] |
$aws ec2 describe-instances --query "Reservations[*].Instances[*].[.InstanceId,Tags[*]]"
Bad value for --query Reservations[*].Instances[*].[.InstanceId,Tags[*]]: invalid token: Parse error at column 30, token "." (DOT), for expression: "Reservations[*].Instances[*].[.InstanceId,Tags[*]]" ^ |
$aws ec2 describe-instances --query "Reservations[*].Instances[*].[.InstanceId]"
Bad value for --query Reservations[*].Instances[*].[.InstanceId]: invalid token: Parse error at column 30, token "." (DOT), for expression: "Reservations[*].Instances[*].[.InstanceId]" ^ |
$aws ec2 describe-instances --query "Reservations[*].Instances[*].[InstanceId,Tags[user5*]]"
Bad value for --query Reservations[*].Instances[*].[InstanceId,Tags[user5*]]: Expecting: star, got: unquoted_identifier: Parse error at column 46, token "user5" (UNQUOTED_IDENTIFIER), for expression: "Reservations[*].Instances[*].[InstanceId,Tags[user5*]]" ^ |
$aws ec2 describe-instances --query "Reservations[*].Instances[*].[InstanceId,Tags[user5]]"
Bad value for --query Reservations[*].Instances[*].[InstanceId,Tags[user5]]: Expecting: star, got: unquoted_identifier: Parse error at column 46, token "user5" (UNQUOTED_IDENTIFIER), for expression: "Reservations[*].Instances[*].[InstanceId,Tags[user5]]" ^ |
$sudo pip install saws
Collecting saws Downloading https://files.pythonhosted.org/packages/ef/7a/37581ad99e8aefc9976c463fb7741593e1ff91dea2228ec5f889ba6b9e33/saws-0.4.3.tar.gz (46kB) 100% |████████████████████████████████| 51kB 614kB/s Requirement already satisfied: awscli<2.0.0,>=1.7.46 in /usr/local/lib/python2.7/dist-packages (from saws) Collecting click<7.0,>=4.0 (from saws) Downloading https://files.pythonhosted.org/packages/34/c1/8806f99713ddb993c5366c362b2f908f18269f8d792aff1abfd700775a77/click-6.7-py2.py3-none-any.whl (71kB) 100% |████████████████████████████████| 71kB 1.4MB/s Collecting configobj<6.0.0,>=5.0.6 (from saws) Downloading https://files.pythonhosted.org/packages/64/61/079eb60459c44929e684fa7d9e2fdca403f67d64dd9dbac27296be2e0fab/configobj-5.0.6.tar.gz Requirement already satisfied: enum34>=1.0.4 in /usr/lib/python2.7/dist-packages (from saws) ... Requirement already satisfied: python-dateutil<3.0.0,>=2.1; python_version >= "2.7" in /usr/local/lib/python2.7/dist-packages (from botocore==1.12.68->awscli<2.0.0,>=1.7.46->saws) Requirement already satisfied: urllib3<1.25,>=1.20; python_version == "2.7" in /usr/local/lib/python2.7/dist-packages (from botocore==1.12.68->awscli<2.0.0,>=1.7.46->saws) Building wheels for collected packages: saws, configobj Running setup.py bdist_wheel for saws ... done Stored in directory: /root/.cache/pip/wheels/d5/76/41/cd49100cd35049d460ec69eea00501e2c7805febafd26fc911 Running setup.py bdist_wheel for configobj ... done Stored in directory: /root/.cache/pip/wheels/f1/e4/16/4981ca97c2d65106b49861e0b35e2660695be7219a2d351ee0 Successfully built saws configobj Installing collected packages: click, configobj, wcwidth, prompt-toolkit, pygments, saws Successfully installed click-6.7 configobj-5.0.6 prompt-toolkit-1.0.15 pygments-2.3.1 saws-0.4.3 wcwidth-0.1.7 |
$saws
No resource cache found Refreshing resources... Refreshing instance ids... Refreshing instance tag keys... Refreshing instance tag values... Refreshing bucket names... Refreshing bucket uris... Done refreshing Version: 0.4.3 Theme: vim ... --ipv6-addresses saws> aws ec2 run-instances --instance-type t2.micro --security-groups launch-wizard-5 --key-name user5 --subnet-id subnet-0d00d 8b5d01e66e35 --image-id ami-0b97e17c772f052e6 An error occurred (InvalidParameterCombination) when calling the RunInstances operation: The parameter groupName cannot be used with the parameter subnet saws> saws> exit saws> saws> exit saws> saws> |
$cd aws
|
$ls
hello.md README.md |
$vim script
|
$mkdir scripts
|
$cd scripts/
|
$cd ..
|
$mv script scripts/create-ifrastructure.sh
|
[default] region = eu-west-1 output = json
cat: .aws/credentials: No such file or directory
Время первой команды журнала | 11:43:51 2018-12-19 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 13:16:56 2018-12-19 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 70 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 25.71 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 4.29 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 1.55 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 0.75 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду w. В поле WHAT, соответствующем текущему терминалу, должна быть указана программа script.
Команды, при наборе которых были допущены синтаксические ошибки, выводятся перечёркнутым текстом:
$ l s-l bash: l: command not found |
Если код завершения команды равен нулю, команда была выполнена без ошибок. Команды, код завершения которых отличен от нуля, выделяются цветом.
$ test 5 -lt 4 |
Команды, ход выполнения которых был прерван пользователем, выделяются цветом.
$ find / -name abc find: /home/devi-orig/.gnome2: Keine Berechtigung find: /home/devi-orig/.gnome2_private: Keine Berechtigung find: /home/devi-orig/.nautilus/metafiles: Keine Berechtigung find: /home/devi-orig/.metacity: Keine Berechtigung find: /home/devi-orig/.inkscape: Keine Berechtigung ^C |
Команды, выполненные с привилегиями суперпользователя, выделяются слева красной чертой.
# id uid=0(root) gid=0(root) Gruppen=0(root) |
Изменения, внесённые в текстовый файл с помощью редактора, запоминаются и показываются в журнале в формате ed. Строки, начинающиеся символом "<", удалены, а строки, начинающиеся символом ">" -- добавлены.
$ vi ~/.bashrc
|
Для того чтобы изменить файл в соответствии с показанными в диффшоте изменениями, можно воспользоваться командой patch. Нужно скопировать изменения, запустить программу patch, указав в качестве её аргумента файл, к которому применяются изменения, и всавить скопированный текст:
$ patch ~/.bashrc |
Для того чтобы получить краткую справочную информацию о команде, нужно подвести к ней мышь. Во всплывающей подсказке появится краткое описание команды.
Если справочная информация о команде есть, команда выделяется голубым фоном, например: vi. Если справочная информация отсутствует, команда выделяется розовым фоном, например: notepad.exe. Справочная информация может отсутствовать в том случае, если (1) команда введена неверно; (2) если распознавание команды LiLaLo выполнено неверно; (3) если информация о команде неизвестна LiLaLo. Последнее возможно для редких команд.
Большие, в особенности многострочные, всплывающие подсказки лучше всего показываются браузерами KDE Konqueror, Apple Safari и Microsoft Internet Explorer. В браузерах Mozilla и Firefox они отображаются не полностью, а вместо перевода строки выводится специальный символ.
Время ввода команды, показанное в журнале, соответствует времени начала ввода командной строки, которое равно тому моменту, когда на терминале появилось приглашение интерпретатора
Имя терминала, на котором была введена команда, показано в специальном блоке. Этот блок показывается только в том случае, если терминал текущей команды отличается от терминала предыдущей.
Вывод не интересующих вас в настоящий момент элементов журнала, таких как время, имя терминала и других, можно отключить. Для этого нужно воспользоваться формой управления журналом вверху страницы.
Небольшие комментарии к командам можно вставлять прямо из командной строки. Комментарий вводится прямо в командную строку, после символов #^ или #v. Символы ^ и v показывают направление выбора команды, к которой относится комментарий: ^ - к предыдущей, v - к следующей. Например, если в командной строке было введено:
$ whoami
user
$ #^ Интересно, кто я?в журнале это будет выглядеть так:
$ whoami
user
Интересно, кто я? |
Если комментарий содержит несколько строк, его можно вставить в журнал следующим образом:
$ whoami
user
$ cat > /dev/null #^ Интересно, кто я?
Программа whoami выводит имя пользователя, под которым мы зарегистрировались в системе. - Она не может ответить на вопрос о нашем назначении в этом мире.В журнале это будет выглядеть так:
$ whoami user
|
Комментарии, не относящиеся непосредственно ни к какой из команд, добавляются точно таким же способом, только вместо симолов #^ или #v нужно использовать символы #=
1 2 3 4Группы команд, выполненных на разных терминалах, разделяются специальной линией. Под этой линией в правом углу показано имя терминала, на котором выполнялись команды. Для того чтобы посмотреть команды только одного сенса, нужно щёкнуть по этому названию.
LiLaLo (L3) расшифровывается как Live Lab Log.
Программа разработана для повышения эффективности обучения Unix/Linux-системам.
(c) Игорь Чубин, 2004-2008