Difference between revisions of "I2rda Course Cheatsheet"
Line 116: | Line 116: | ||
− | == | + | == GNU screen programs == |
Type: | Type: | ||
screen | screen | ||
Then: | Then: | ||
+ | * type exit to get out of your screen sessions | ||
* <code>ctrl+l, n</code>: cycle through screen windows | * <code>ctrl+l, n</code>: cycle through screen windows | ||
* <code>ctrl+l, :hardcopy RET</code>: create a file with a copy of all inputs and outputs of your session. | * <code>ctrl+l, :hardcopy RET</code>: create a file with a copy of all inputs and outputs of your session. | ||
− | * <code>ctrl+l, d</code>: detach screen session | + | * <code>ctrl+l,d</code>: detach screen session |
+ | * <code>ctrl+l,K</code>: abandon current session. It will be lost. | ||
+ | * <code>ctrl+l,ESC</code>: enter scroll or copy mode. <code>PgUp</code> an <code>PgDn</code> will now work. <code>Esc</code> to get out. | ||
* type <code>screen -r</code> to recover a detached | * type <code>screen -r</code> to recover a detached | ||
− |
Revision as of 17:56, 7 May 2017
Contents
-
ctrl + a
: go to beginning of line -
ctrl + e
: go to end of line -
ctrl + w
: delete current word backwards, word behind if in space -
ctrl + /
: undo changes -
ctrl + x, <BACKSPACE>
: search backwards for a character, here? -
ctrl + r, ?
: search backwards for a character, here? -
alt + b
: move backwards word-wise. -
alt + f
: move backwards word-wise -
alt + d
: delete current word forwards, next word if in space -
ctrl + k
: delete to end of line
Pagers: man
, less
and vim
keys
- This is a continuous and very important activity
- Linux has a large and comprehensive documentation system called
man
- Linux manual pages are referred to as man pages.
- To open the man page for a particular command, you just need to type man followed by the name of the command you are interested in.
- To browse through a man page, use the up,down,pgup and pgn keys.
- To close (quit) the man page simply hit the q key on your keyboard.
followed by the type of thing you are trying to do. An example of this is in exercise 1-3, part c).
Exercise
- Look up the manual information for the ls command by typing the following in a terminal:
man echo man mkdir
- What can you say about this command?
Now try:
man ls
- Did you think you knew this command already?
- What does the
-h
option do? What about the-a
option? What would runningls -lrt
do? - Press the
q
key when you want to quit reading the man page. - Try running
ls
using some of the options mentioned above.
- Look up some programs with man pages with the keywords "list directory"
man –k "list directory"
Linux shortcut symbols
-
.
the directory you are currently in, often used with mv, cp or ln -s to mean "in here please" -
..
the directory one level above the one you are currently in, aka. the parent directory
- - To change directory to the one above your are in:
cd ..
- To returns to the last directory you were working in before this one:
cd –
- On its own,
cd
bring you to your home directory -
~
shorthand for your home directory, where all your data is kept. -
>
directs output of one command into a file -
|
often called the pipe operator: directs output of one command into another command.
Keybindings for using the history file
-
:<RET>
: save command in history, do not execute. -
!$<RET>
: the final argument of the last command -
!!<RET>
: the entire last command -
!:1-$<RET>
: everthing except the first word of the last command -
!$<RET>
: the final argument of the last command -
^then^now<RET>
: replace the first occurence of then in last command with now -
!!:gs/then/now/<RET>
: replace the ALL occurences of "then" in last command with "now" -
!!:gs/then/now/:p<RET>
: as above except do not execute.
An important note on line endings – CR and LF
- Besides spaces in filename, there is another major pitfalls when transferring file over to Linux.
- In Linux, the end of line is called a new line, symbol with
\n
. - Windows uses
CR
andLF
.. called theDOS
format. - Old Macs used
LF
- the tools
dos2unix
andmac2unix
convert
Text editing
- There are very many text editors, but one of the most powerful and dependable is
vi
. - It has a steep but tiny learning curve, which we hope to conquer in this section.
- "vi" is an old version and is available on all Unix/linux systems by default
- Vim is the modern version, it used
ncurses
to use the whole screen - It's free and has graphical version call gvim and a Windows version too.
Using vim
- type
vim
to get in, and:q!
to get out without saving. -
ZZ
to save onto to current filename. ":sav fname" otherwise - It opens in "normal" mode which is similar to less, in that direct editing is not expected.
- This is changed by pressing
i
. To get back to normal mode, press theESC
key. - In normal mode
u
undoes any changes -
:
while in normal mode allows command sto be entered - Visual: enabled by "v" or "V" (visual block), sub-box at the bottom open.
- After v or V, movement keys ":%" will operate on whole document, ":’a,’b" operate between two marks, ":42,45" between two line numbers
- search via "/", ":set hlsearch" to see all the hits
Getting by in only normal mode
- movement keys, "w" jump via start of words; "e" jump via ends; "fc" jump to next c
- "0" for start of line, "A" for end of line and into insert mode
- "x" delete current character, "xp" switch positions of current and next character
- "yyp" copy current line and paste it underneath
- "dd" delete line, "2d" delete this and following two lines. "dgg" delete to start, "dG" delete to end
- "dw" delete current word
- Command: Activated by ":", sub-box at the bottom open, rich command language
- Visual: Activated by "v" or "V" (visual block), sub-box at the bottom open, rich command language
Advanced but really useful commands
- ":colorscheme desert" chang to the desert colour scheme, "morning" "delek" many others
-
:%s/snooze/sneeze/gc
also works -
:g/sneeze/d delete all lines without sneeze"
-
:v/sneeze/d delete all lines with sneeze"
- ":42y[RET]p" paste line 42
- "d214G" delete to line 214
- "y214G" delete to line 214
-
:set list
, all non-printing characters are also shown. -
:set hlsearch
, will highlight all search occurences. -
:set nu
, show line numbers.
GNU screen programs
Type:
screen
Then:
- type exit to get out of your screen sessions
-
ctrl+l, n
: cycle through screen windows -
ctrl+l, :hardcopy RET
: create a file with a copy of all inputs and outputs of your session. -
ctrl+l,d
: detach screen session -
ctrl+l,K
: abandon current session. It will be lost. -
ctrl+l,ESC
: enter scroll or copy mode.PgUp
anPgDn
will now work.Esc
to get out. - type
screen -r
to recover a detached