mirror of
https://github.com/LeCoupa/awesome-cheatsheets.git
synced 2026-01-27 13:48:01 -08:00
Compare commits
8 Commits
bba3ed70a4
...
48917acc65
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
48917acc65 | ||
|
|
88e5be6e4b | ||
|
|
2f9037b24e | ||
|
|
0931c8fc67 | ||
|
|
3c2016f645 | ||
|
|
4fdd37d875 | ||
|
|
e2c2780c38 | ||
|
|
707a1a22e2 |
@@ -16,3 +16,69 @@ GRANT ALL PRIVILEGES ON prospectwith.* TO 'power'@'localhost' WITH GRANT OPTION;
|
||||
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; # Create user
|
||||
|
||||
mysql -u root -pmypassword -e "MY SQL QUERY" &>> query.log & disown # Run SQL query in the background
|
||||
|
||||
# *****************************************************************************
|
||||
# Database and Table Operations
|
||||
# *****************************************************************************
|
||||
|
||||
CREATE DATABASE database_name; # Create a new database
|
||||
DROP DATABASE database_name; # Delete a database
|
||||
CREATE TABLE table_name (column1 datatype, column2 datatype, ...); # Create a new table
|
||||
DROP TABLE table_name; # Delete a table
|
||||
SHOW TABLES; # Display all tables in the current database
|
||||
DESCRIBE table_name; # Show the structure of a table
|
||||
|
||||
# *****************************************************************************
|
||||
# Data Manipulation
|
||||
# *****************************************************************************
|
||||
|
||||
INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...); # Insert data into a table
|
||||
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition; # Update existing data in a table
|
||||
DELETE FROM table_name WHERE condition; # Delete data from a table
|
||||
SELECT column1, column2, ... FROM table_name WHERE condition; # Select data from a table
|
||||
|
||||
# *****************************************************************************
|
||||
# Backup and Restore
|
||||
# *****************************************************************************
|
||||
|
||||
mysqldump -u username -p database_name table1 table2 > file.sql # Backup specific tables
|
||||
mysql -u username -p database_name < file.sql # Restore specific tables
|
||||
|
||||
# *****************************************************************************
|
||||
# User Management and Security
|
||||
# *****************************************************************************
|
||||
|
||||
REVOKE privilege_type ON database_name.table_name FROM 'username'@'hostname'; # Revoke privileges from a user
|
||||
DROP USER 'username'@'hostname'; # Delete a user
|
||||
ALTER USER 'username'@'hostname' IDENTIFIED BY 'newpassword'; # Reset a user's password
|
||||
|
||||
# *****************************************************************************
|
||||
# Performance and Maintenance
|
||||
# *****************************************************************************
|
||||
|
||||
OPTIMIZE TABLE table_name; # Optimize a table
|
||||
ANALYZE TABLE table_name; # Analyze a table for key distribution and storage optimization
|
||||
CHECK TABLE table_name; # Check a table for errors
|
||||
REPAIR TABLE table_name; # Repair a corrupted table
|
||||
|
||||
# *****************************************************************************
|
||||
# Advanced Queries
|
||||
# *****************************************************************************
|
||||
|
||||
SELECT ... FROM table1 JOIN table2 ON table1.column = table2.column; # Perform a join operation between two tables
|
||||
SELECT ... FROM (SELECT ... FROM table_name) AS subquery; # Use a subquery within another query
|
||||
SELECT column, COUNT(*) FROM table_name GROUP BY column; # Group results and use aggregate functions
|
||||
|
||||
# *****************************************************************************
|
||||
# System Information
|
||||
# *****************************************************************************
|
||||
|
||||
SELECT VERSION(); # Show the current version of MySQL
|
||||
SELECT User, Host FROM mysql.user; # List all current MySQL users
|
||||
|
||||
# *****************************************************************************
|
||||
# Miscellaneous
|
||||
# *****************************************************************************
|
||||
|
||||
SET GLOBAL general_log = 'ON'; # Enable query logging
|
||||
SHOW FULL PROCESSLIST; # Show the last queries executed in MySQL
|
||||
|
||||
@@ -88,7 +88,7 @@ CHEATSHEET C#
|
||||
string newStr = oldStr.Replace("old","new");
|
||||
|
||||
//IndexOf
|
||||
//Finds the first ocurrence of a string in a larger string
|
||||
//Finds the first occurrence of a string in a larger string
|
||||
//Returns -1 if the string is not found
|
||||
String.IndexOf(val, start, num)
|
||||
val - string to search for
|
||||
@@ -102,7 +102,7 @@ CHEATSHEET C#
|
||||
String.Split(Char[]);
|
||||
|
||||
//ToCharArray
|
||||
//Places selected characteres in a string in a char array
|
||||
//Places selected characters in a string in a char array
|
||||
String str = "AaBbCcDd";
|
||||
//create array of 8 vowels
|
||||
var chars = str.ToCharArray();
|
||||
@@ -135,7 +135,7 @@ CHEATSHEET C#
|
||||
|
||||
6.1 TimeSpan Constructor
|
||||
|
||||
TimpeSpan(hour, minute, sec)
|
||||
TimeSpan(hour, minute, sec)
|
||||
|
||||
TimeSpan timeS = new TimeSpan(10, 14, 50);
|
||||
TimeSpan timeS_Hours = TimeSpan.FromDays(3640);
|
||||
@@ -144,8 +144,8 @@ CHEATSHEET C#
|
||||
|
||||
Format item syntax: {index[,alignment][:format string]}
|
||||
index - Specifies element in list of values to which format is applied
|
||||
aligment - Indicates minimun width (in characters) to display value
|
||||
format string - Contains the code which specififes the format of the displayed value
|
||||
alignment - Indicates minimum width (in characters) to display value
|
||||
format string - Contains the code which specifies the format of the displayed value
|
||||
|
||||
7.1 Numeric
|
||||
|
||||
@@ -293,7 +293,7 @@ CHEATSHEET C#
|
||||
[access modifier] className (parameters) [:initializer]
|
||||
|
||||
initializer -base calls constructor in base class.
|
||||
this calls constuctor within class.
|
||||
this calls constructor within class.
|
||||
|
||||
public class nameClass : Initializer {
|
||||
public className(dataType param1 , dataType param2, ...) : base(param1, param2)
|
||||
@@ -313,8 +313,8 @@ CHEATSHEET C#
|
||||
abstract – must be implemented by subclass
|
||||
|
||||
Passing parameters:
|
||||
1. By default, parametres are passed by value
|
||||
2. Passing by reference: ref, in and out modifers
|
||||
1. By default, parameters are passed by value
|
||||
2. Passing by reference: ref, in and out modifiers
|
||||
|
||||
To pass a parameter by reference with the intent of changing the value, use the ref, or out keyword. To pass by reference with the intent of avoiding copying but not changing the value, use the in modifier
|
||||
|
||||
|
||||
@@ -524,14 +524,14 @@ Cyan='\033[0;36m' # Cyan
|
||||
White='\033[0;97m' # White
|
||||
|
||||
# Additional colors
|
||||
LGrey='\033[0;37m' # Ligth Gray
|
||||
LGrey='\033[0;37m' # Light Gray
|
||||
DGrey='\033[0;90m' # Dark Gray
|
||||
LRed='\033[0;91m' # Ligth Red
|
||||
LGreen='\033[0;92m' # Ligth Green
|
||||
LYellow='\033[0;93m'# Ligth Yellow
|
||||
LBlue='\033[0;94m' # Ligth Blue
|
||||
LRed='\033[0;91m' # Light Red
|
||||
LGreen='\033[0;92m' # Light Green
|
||||
LYellow='\033[0;93m'# Light Yellow
|
||||
LBlue='\033[0;94m' # Light Blue
|
||||
LPurple='\033[0;95m'# Light Purple
|
||||
LCyan='\033[0;96m' # Ligth Cyan
|
||||
LCyan='\033[0;96m' # Light Cyan
|
||||
|
||||
|
||||
# Bold
|
||||
|
||||
@@ -397,8 +397,8 @@ d, t := doubleAndTriple(5)
|
||||
_, t := doubleAndTriple(3)
|
||||
// t = 9
|
||||
|
||||
// Functions can defer commands. Defered commands are
|
||||
// runned in a stack order after the execution and
|
||||
// Functions can defer commands. Deferred commands are
|
||||
// ran in a stack order after the execution and
|
||||
// returning of a function
|
||||
var aux = 0
|
||||
|
||||
@@ -488,7 +488,7 @@ person3.Age // 0
|
||||
|
||||
## Maps
|
||||
|
||||
Maps are data structures that holds values assigneds to a key.
|
||||
Maps are data structures that holds values assigned to a key.
|
||||
|
||||
```go
|
||||
// Declaring a map
|
||||
@@ -508,7 +508,7 @@ newYork // "EUA"
|
||||
// Delete
|
||||
delete(cities, "NY")
|
||||
|
||||
// Check if a key is setted
|
||||
// Check if a key is set
|
||||
value, ok := cities["NY"]
|
||||
ok // false
|
||||
value // ""
|
||||
|
||||
@@ -308,7 +308,7 @@ for(dataType item : array) {
|
||||
//Declare a variable, object name
|
||||
String s;
|
||||
|
||||
//Invoke a contructor to create an object
|
||||
//Invoke a constructor to create an object
|
||||
s = new String ("Hello World");
|
||||
|
||||
//Invoke an instance method that operates on the object's value
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<?php
|
||||
|
||||
// Exit the file, string inside get's echo'ed
|
||||
die("This file is not ment to be ran. ¯\_(ツ)_/¯");
|
||||
exit("This file is not ment to be ran. ¯\_(ツ)_/¯");
|
||||
die("This file is not meant to be ran. ¯\_(ツ)_/¯");
|
||||
exit("This file is not meant to be ran. ¯\_(ツ)_/¯");
|
||||
|
||||
/**
|
||||
* Printing
|
||||
@@ -17,7 +17,7 @@ var_dump($arr); // Print anything, with type hints for any value and sizes
|
||||
$string = 'Awesome cheatsheets';
|
||||
|
||||
str_contains($string, 'cheat'); // Find if the string contains the specified string (PHP >= 8.0)
|
||||
str_replace('Awesome', 'Bonjour', $string); // Replace all occurence
|
||||
str_replace('Awesome', 'Bonjour', $string); // Replace all occurrence
|
||||
strcmp($string, 'Awesome cheatsheets'); // Compare two strings
|
||||
strpos($string, 'a', 0); // Get position in the string
|
||||
str_split($string, 2); // Split the string
|
||||
@@ -541,7 +541,7 @@ u Pattern is treated as UTF-8
|
||||
\w Any "word" character (a-z 0-9 _)
|
||||
\W Any non "word" character
|
||||
\s Whitespace (space, tab CRLF)
|
||||
\S Any non whitepsace character
|
||||
\S Any non whitespace character
|
||||
\d Digits (0-9)
|
||||
\D Any non digit character
|
||||
. (Period) - Any character except newline
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
| import | import libraries/modules/packages | import |
|
||||
| from | import specific function/classes from modules/packages | import |
|
||||
| try | this block will be tried to get executed | exception handling |
|
||||
| except | is any exception/error has occured it'll be executed | exception handling |
|
||||
| except | is any exception/error has occurred it'll be executed | exception handling |
|
||||
| finally | It'll be executed no matter exception occurs or not | exception handling |
|
||||
| raise | throws any specific error/exception | exception handling |
|
||||
| assert | throws an AssertionError if condition is false | exception handling |
|
||||
|
||||
122
tools/nmap.sh
Normal file
122
tools/nmap.sh
Normal file
@@ -0,0 +1,122 @@
|
||||
##############################################################################
|
||||
# NMAP TARGET DEFINITION
|
||||
##############################################################################
|
||||
|
||||
nmap 10.10.10.1 # Scan one IP
|
||||
nmap 10.10.10.1 10.10.10.2 # Scan multiple IPs
|
||||
nmap 10.10.10.10-254 # Scan an IP range
|
||||
nmap domain.example.com # Scan a domain
|
||||
nmap 192.168.1.0/24 # Scan using CIDR
|
||||
nmap -iL list.txt # Scan targets from the file list.txt
|
||||
nmap -iR 10 # Scan 10 hosts randomly
|
||||
nmap –exclude 10.10.10.1 # Scan but exclude one IP
|
||||
|
||||
|
||||
##############################################################################
|
||||
# NMAP SCANNING MODES
|
||||
##############################################################################
|
||||
|
||||
|
||||
nmap 10.10.10.1 -sS # TCP SYN port scan
|
||||
nmap 10.10.10.1 -sT # TCP connect port scan
|
||||
nmap 10.10.10.1 -sU # UDP scan
|
||||
nmap 10.10.10.1 -sA # TCP ACK port scan
|
||||
nmap 10.10.10.1 -sW # TCP Window port scan
|
||||
|
||||
|
||||
##############################################################################
|
||||
# NMAP HOST SCAN
|
||||
##############################################################################
|
||||
|
||||
|
||||
nmap 10.10.10.1-3 -sL # List targets only
|
||||
nmap 10.10.10.1/24 -sn # Host discovery only.
|
||||
nmap 10.10.10.1-5 -Pn # Port scan only.
|
||||
nmap 10.10.10.1-5 -PS22-25,80 # TCP SYN discovery on port 22 to 25 and 80.
|
||||
nmap 10.10.10.1-5 -PA22,443 # TCP ACK discovery on port 22 and 443.
|
||||
nmap 10.10.10.1-5 -PU53 # UDP discovery on port 53.
|
||||
nmap 10.10.10.1-1/24 -PR # ARP discovery
|
||||
nmap 10.10.10.1 -n # No DNS resolution
|
||||
|
||||
|
||||
##############################################################################
|
||||
# NMAP PORT SCAN
|
||||
##############################################################################
|
||||
|
||||
|
||||
nmap 10.10.10.1 -p 22 # Scan port 22
|
||||
nmap 10.10.10.1 -p 22-80 # Scan a port range
|
||||
nmap 10.10.10.1 -p U:53,T:22-25,80 # Scan multiple ports UDP and TCP
|
||||
nmap 10.10.10.1 -p- # Scan all ports
|
||||
nmap 10.10.10.1 -p http,https # Scan ports based on service name
|
||||
nmap 10.10.10.1 -F # Scan quickly 100 common ports
|
||||
nmap 10.10.10.1 –top-ports 1000 # Scan the top 1000 ports
|
||||
|
||||
|
||||
##############################################################################
|
||||
# NMAP DETECTION
|
||||
##############################################################################
|
||||
|
||||
|
||||
nmap 10.10.10.1 -sV # Attempts to determine the version of the service running on port
|
||||
nmap 10.10.10.1 -sV –version-intensity 8 # Intensity level 0 to 9. Higher number increases possibility of correctness
|
||||
nmap 10.10.10.1 -sV –version-light # Enable light mode. Lower possibility of correctness. Faster
|
||||
nmap 10.10.10.1 -sV –version-all # Enable intensity level 9. Higher possibility of correctness. Slower
|
||||
nmap 10.10.10.1 -A # Enables OS detection, version detection, script scanning, and traceroute
|
||||
nmap 10.10.10.1 -O # Remote OS detection using TCP/IP stack fingerprinting
|
||||
nmap 10.10.10.1 -O –osscan-limit # If at least one open and one closed TCP port are not found it will not try OS detection against host
|
||||
nmap 10.10.10.1 -O –osscan-guess # Makes Nmap guess more aggressively
|
||||
nmap 10.10.10.1 -O –max-os-tries 1 # Set the maximum number x of OS detection tries against a target
|
||||
nmap 10.10.10.1 -A # Enables OS detection, version detection, script scanning, and traceroute
|
||||
|
||||
|
||||
##############################################################################
|
||||
# NMAP EVASION
|
||||
##############################################################################
|
||||
|
||||
|
||||
nmap 10.10.10.1 -T0 # Paranoid (0) Intrusion Detection System evasion
|
||||
nmap 10.10.10.1 -T1 # Sneaky (1) Intrusion Detection System evasion
|
||||
nmap 10.10.10.1 -T2 # Polite (2) Slows down the scan to use less bandwidth and use less target machine resources
|
||||
nmap 10.10.10.1 -T3 # Normal (3) Default speed
|
||||
nmap 10.10.10.1 -T4 # Aggressive (4) Speeds scans
|
||||
nmap 10.10.10.1 -T5 # Insane (5) Extra Speeds scan
|
||||
nmap 10.10.10.1 -f # Requested scan (including ping scans) use tiny fragmented IP packets. Harder for packet filters
|
||||
nmap 10.10.10.1 –mtu 32 # Set your own offset size
|
||||
nmap -D 10.10.10.1,10.10.10.2 # Send scans from multiple IPs
|
||||
nmap -S www.github.com # Scan Github (-e eth0 -Pn may be required)
|
||||
nmap -g 53 10.10.10.1 # Use given source port number
|
||||
nmap –proxies http://myproxy:80 10.10.10.1 # Relay connections through HTTP/SOCKS4 proxies
|
||||
|
||||
|
||||
##############################################################################
|
||||
# NMAP SCRIPTS
|
||||
##############################################################################
|
||||
|
||||
|
||||
nmap 10.10.10.1 –script default # Scan with default NSE scripts.
|
||||
nmap 10.10.10.1 –script=banner # Scan with a single script banner
|
||||
nmap 10.10.10.1 –script=http* # Scan with a wildcard http
|
||||
nmap 10.10.10.1 –script=http,banner # Scan with two scripts http and banner
|
||||
nmap 10.10.10.1 –script “not intrusive” # Scan default, but without intrusive scripts
|
||||
|
||||
|
||||
##############################################################################
|
||||
# NMAP OUTPUT
|
||||
##############################################################################
|
||||
|
||||
|
||||
nmap 10.10.10.1 -oN nmap.file # Normal output to the file nmap.file
|
||||
nmap 10.10.10.1 -oX nmap.file # XML output to the file nmap.file
|
||||
nmap 10.10.10.1 -oG nmap.file # Grepable output to the file nmap.file
|
||||
nmap 10.10.10.1 -oA results # Output in the three major formats at once
|
||||
nmap 10.10.10.1 -oG – # Grepable output to screen. -oN
|
||||
nmap 10.10.10.1 -oN nmap.file –append-output # Append a scan to a previous scan file
|
||||
nmap 10.10.10.1 -v # Increase the verbosity level
|
||||
nmap 10.10.10.1 -vv # Increase more the verbosity level
|
||||
nmap 10.10.10.1 -d # Increase debugging level
|
||||
nmap 10.10.10.1 –reason # Display the reason a port is in a particular state
|
||||
nmap 10.10.10.1 –open # Only show open ports
|
||||
nmap 10.10.10.1 -T4 –packet-trace # Show all packets sent and received
|
||||
nmap –iflist # Shows the host interfaces and routes
|
||||
nmap –resume nmap.file # Resume scanning
|
||||
53
tools/snort.sh
Normal file
53
tools/snort.sh
Normal file
@@ -0,0 +1,53 @@
|
||||
##############################################################################
|
||||
# SNORT SNIFFER MODE
|
||||
##############################################################################
|
||||
|
||||
|
||||
snort -v # Verbose mode
|
||||
snort -e # Display the link layer headers
|
||||
snort -d # Display data payload
|
||||
snort -X # Display full packet details (HEX)
|
||||
snort -eX # Display all packet details
|
||||
snort -v -n 10 # Sniff 'N' number of packets
|
||||
|
||||
|
||||
##############################################################################
|
||||
# SNORT LOGGER MODE
|
||||
##############################################################################
|
||||
|
||||
|
||||
Log path is /var/log/snort
|
||||
|
||||
snort -v -l /home/user/Desktop # Use another log path
|
||||
snort-v -K ASCII # Log in the ASCII format
|
||||
snort -v -r snort.log # Read from snort files
|
||||
snort -v -r snort.log -n 10 # Read 10 packets from snort files
|
||||
snort -v -r snort.log tcp # Filter packets for TCP
|
||||
snort -v -r snort.log ‘udp and port 53’ # Filter packets for DNS (UDP:53)
|
||||
|
||||
|
||||
##############################################################################
|
||||
# SNORT PCAP
|
||||
##############################################################################
|
||||
|
||||
|
||||
snort -c /etc/snort/snort.conf -q -r example.pcap -A console # Processing one PCAP file
|
||||
snort -c /etc/snort/snort.conf -q --pcap-list= "example1.pcap example2.pcap" -A console # Processing some PCAP files
|
||||
snort -c /etc/snort/snort.conf -q --pcap-dir=/home/whereyourpcapis -A console # Processing some PCAP files from a folder
|
||||
snort -c /etc/snort/snort.conf -q --pcap-list="example1.pcap example2.pcap" -A console --pcap-show # Result the processed PCAP files
|
||||
|
||||
|
||||
##############################################################################
|
||||
# SNORT IDS - IPS MODE
|
||||
##############################################################################
|
||||
|
||||
|
||||
snort -c /etc/snort/snort.conf # Use configuration file
|
||||
snort -c /etc/snort/snort.conf -T # Test instance and configuration file
|
||||
snort -c /etc/snort/snort.conf -N # Disable logging
|
||||
snort -c /etc/snort/snort.conf -D # Run snort in background
|
||||
snort -c /etc/snort/snort.conf -v -A none # Alerting in mode "No output"
|
||||
snort -c /etc/snort/snort.conf -v -A console # Alerting in mode "Output console"
|
||||
snort -c /etc/snort/snort.conf -v -A fast # Alerting in mode "Output file resumed"
|
||||
snort -c /etc/snort/snort.conf -v -A full # Alerting in mode "Output file complete"
|
||||
snort -c /etc/snort/rules/local.rules -v -A console # Alerting without config file
|
||||
@@ -20,13 +20,15 @@ e jump to end of words (punctuation considered words)
|
||||
E jump to end of words (no punctuation)
|
||||
b jump backward by words (punctuation considered words)
|
||||
B jump backward by words (no punctuation)
|
||||
ge jump backward to end of words
|
||||
ge jump backward to end of a word
|
||||
gE jump backwards to the end of a word (words can contain punctuation)
|
||||
0 (zero) start of line
|
||||
^ first non-blank character of line
|
||||
$ end of line
|
||||
- move line upwards, on the first non blank character
|
||||
+ move line downwards, on the first non blank character
|
||||
<enter> move line downwards, on the first non blank character
|
||||
$ jump to the end of the line
|
||||
g_ jump to the last non-blank character of the line
|
||||
- move line upwards, on the first non-blank character
|
||||
+ move line downwards, on the first non-blank character
|
||||
<enter> move line downwards, on the first non-blank character
|
||||
gg go to first line
|
||||
G go to last line
|
||||
ngg go to line n
|
||||
@@ -38,10 +40,6 @@ nG go To line n
|
||||
} move the cursor a paragraph forwards
|
||||
]] move the cursor a section forwards or to the next {
|
||||
[[ move the cursor a section backwards or the previous {
|
||||
CTRL-f move the cursor forward by a screen of text
|
||||
CTRL-b move the cursor backward by a screen of text
|
||||
CTRL-u move the cursor up by half a screen
|
||||
CTRL-d move the cursor down by half a screen
|
||||
H move the cursor to the top of the screen.
|
||||
M move the cursor to the middle of the screen.
|
||||
L move the cursor to the bottom of the screen.
|
||||
@@ -49,6 +47,16 @@ fx search line forward for 'x'
|
||||
Fx search line backward for 'x'
|
||||
tx search line forward before 'x'
|
||||
Tx search line backward before 'x'
|
||||
CTRL-y moves screen up one line
|
||||
CTRL-e moves screen down one line
|
||||
CTRL-u moves cursor & screen up ½ page
|
||||
CTRL-d moves cursor & screen down ½ page
|
||||
CTRL-b moves screen up one page, cursor to last line
|
||||
CTRL-f moves screen down one page, cursor to first line
|
||||
zz shift current line to middle of screen
|
||||
z. same as zz but also jumps to the first non-black character
|
||||
zt shift current line to top of screen
|
||||
zb shift current line to bottom of screen
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -60,8 +68,15 @@ Tx search line backward before 'x'
|
||||
ma make a bookmark named a at the current cursor position
|
||||
`a go to position of bookmark a
|
||||
'a go to the line with bookmark a
|
||||
`0 go to the position where Vim was previously exited
|
||||
`" go to the position when last editing this file
|
||||
`. go to the line that you last edited
|
||||
`` go to the position before the last jump
|
||||
g, go to newer position in change list
|
||||
g; go to older position in change list
|
||||
|
||||
# Tip: To jump to a mark you can either use a backtick (`) or an apostrophe (').
|
||||
# Using an apostrophe jumps to the beginning (first non-blank) of the line holding the mark.
|
||||
|
||||
##############################################################################
|
||||
# INSERT MODE
|
||||
@@ -70,10 +85,13 @@ ma make a bookmark named a at the current cursor position
|
||||
|
||||
i start insert mode at cursor
|
||||
I insert at the beginning of the line
|
||||
gi return to insert mode where you inserted text the last time
|
||||
gI like "I", but always start in column 1
|
||||
a append after the cursor
|
||||
A append at the end of the line
|
||||
o open (append) blank line below current line
|
||||
O open blank line above current line
|
||||
CTRL-o Temporarily enter normal mode to issue one normal-mode command(while in insert mode)
|
||||
Esc exit insert mode
|
||||
|
||||
|
||||
@@ -84,10 +102,25 @@ Esc exit insert mode
|
||||
|
||||
r replace a single character (does not use insert mode)
|
||||
R enter Insert mode, replacing characters rather than inserting
|
||||
J join line below to the current one
|
||||
J join line below to the current one with one space in between
|
||||
gJ join line below to the current one without space in between
|
||||
cc change (replace) an entire line
|
||||
cw change (replace) to the end of word
|
||||
C change (replace) to the end of line
|
||||
cw change (replace) to the end of word (same as ce)
|
||||
2cw change (replace) repeat cw twice
|
||||
ciw change (replace) word under the cursor
|
||||
caw change (replace) word under the cursor and the space after or before it
|
||||
ci" change (replace) word inside ""
|
||||
cit change (replace) html tag content
|
||||
cat change (replace) html tag
|
||||
cis change (replace) sentence under the cursor
|
||||
cas change (replace) sentence under the cursor and the space after or before it
|
||||
cib change (replace) inside a block with ()
|
||||
cab change (replace) a block with ()
|
||||
ciB change (replace) inside a block with {}
|
||||
caB change (replace) a block with {}
|
||||
C change (replace) to the end of line(same as c$)
|
||||
cG change (replace) to the end of the file
|
||||
cgg change (replace) from first line to current line
|
||||
ct' change (replace) until the ' character (can change ' for any character)
|
||||
s delete character at cursor and substitute text
|
||||
S delete line at cursor and substitute text (same as cc)
|
||||
@@ -102,6 +135,7 @@ guiw make current word lowercase
|
||||
gU$ make uppercase until end of line
|
||||
gu$ make lowercase until end of line
|
||||
>> indent line one column to right
|
||||
>i{ indent everything in the {}
|
||||
<< indent line one column to left
|
||||
== auto-indent current line
|
||||
ddp swap current line with next
|
||||
@@ -110,6 +144,7 @@ ddkP swap current line with previous
|
||||
:r [name] insert the file [name] below the cursor.
|
||||
:r !{cmd} execute {cmd} and insert its standard output below the cursor.
|
||||
|
||||
# Tip: Instead of b or B one can also use ( or { respectively.
|
||||
|
||||
##############################################################################
|
||||
# DELETING TEXT
|
||||
@@ -118,10 +153,15 @@ ddkP swap current line with previous
|
||||
|
||||
x delete current character
|
||||
X delete previous character
|
||||
dw delete the current word
|
||||
dw delete (cut) to the end of word (same as de)
|
||||
diw delete (cut) word under the cursor
|
||||
daw delete (cut) word under the cursor and the space after or before it
|
||||
dap delete (cut) a paragraph
|
||||
dd delete (cut) a line
|
||||
dt' delete until the next ' character on the line (replace ' by any character)
|
||||
D delete from cursor to end of line
|
||||
dt' delete (cut) until the next ' character on the line (replace ' by any character)
|
||||
dG delete (cut) to the end of the file
|
||||
dgg delete (cut) from first line to current line
|
||||
D delete (cut) from cursor to end of line (same as d$)
|
||||
:[range]d delete [range] lines
|
||||
|
||||
|
||||
@@ -136,6 +176,10 @@ yy yank (copy) a line
|
||||
y$ yank to end of line
|
||||
p put (paste) the clipboard after cursor/current line
|
||||
P put (paste) before cursor/current line
|
||||
gp put (paste) the clipboard after cursor and leave cursor after the new text
|
||||
gP put (paste) before cursor and leave cursor after the new text
|
||||
"+y yank into the system clipboard register
|
||||
"+p paste from the system clipboard register
|
||||
:set paste avoid unexpected effects in pasting
|
||||
:registers display the contents of all registers
|
||||
"xyw yank word into register x
|
||||
@@ -147,6 +191,12 @@ P put (paste) before cursor/current line
|
||||
"xgP just like "P", but leave the cursor just after the new text
|
||||
:[line]put x put the text from register x after [line]
|
||||
|
||||
# Tip: if you are using vim extension on vs code, you can enable
|
||||
"vim.useSystemClipboard": true
|
||||
in setting.json, this will allow to Use system clipboard for unnamed register.
|
||||
|
||||
|
||||
|
||||
|
||||
##############################################################################
|
||||
# MACROS
|
||||
@@ -157,6 +207,7 @@ qa start recording macro 'a'
|
||||
q end recording macro
|
||||
@a replay macro 'a'
|
||||
@: replay last command
|
||||
@@ repeat macro
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -172,9 +223,11 @@ CTRL-v start visual block mode
|
||||
O move to other corner of block
|
||||
aw mark a word
|
||||
ab a () block (with braces)
|
||||
ab a {} block (with brackets)
|
||||
aB a {} block (with brackets)
|
||||
at a block with <> tags
|
||||
ib inner () block
|
||||
ib inner {} block
|
||||
iB inner {} block
|
||||
it inner <> block
|
||||
Esc exit visual mode
|
||||
|
||||
VISUAL MODE COMMANDS
|
||||
@@ -194,6 +247,7 @@ v% selects matching parenthesis
|
||||
vi{ selects matching curly brace
|
||||
vi" selects text between double quotes
|
||||
vi' selects text between single quotes
|
||||
gv reselect the last selected area
|
||||
|
||||
##############################################################################
|
||||
# SPELLING
|
||||
@@ -283,7 +337,6 @@ CTRL-w < increase window width
|
||||
CTRL-w > decrease window width
|
||||
CTRL-w = equal window
|
||||
CTRL-w o close other windows
|
||||
zz Centers the window to the current line
|
||||
|
||||
|
||||
##############################################################################
|
||||
@@ -306,12 +359,14 @@ clast display the last error
|
||||
|
||||
|
||||
% show matching brace, bracket, or parenthese
|
||||
gf edit the file whose name is under or after the cursor
|
||||
gf edit the file whose name is under the cursor
|
||||
gF edit the file whose name is under the cursor and jump to the line number
|
||||
gd when the cursor is on a local variable or function, jump to its declaration
|
||||
'' return to the line where the cursor was before the latest jump
|
||||
gi return to insert mode where you inserted text the last time
|
||||
CTRL-o move to previous position you were at
|
||||
CTRL-i move to more recent position you were at
|
||||
:set nu display numbers (short for :set number)
|
||||
:set nonu hide numbers (short for :set nonumber)
|
||||
|
||||
|
||||
##############################################################################
|
||||
|
||||
Reference in New Issue
Block a user