mirror of
https://github.com/onceupon/Bash-Oneliner.git
synced 2024-11-29 15:46:35 +00:00
fixed some errors
This commit is contained in:
parent
e553be01fc
commit
01a1d9fee5
35
README.md
35
README.md
@ -1,5 +1,5 @@
|
|||||||
# Bash-Oneliner
|
# Bash-Oneliner
|
||||||
I am glad that you are here! I started working on bioinformatics a few years ago (recently switched to cloud computing), and was amazed by those single-word bash commands which are much faster than my dull scripts, time saved through learning command-line shortcuts and scripting. Not all the code here is oneliner, but i put effort on making them brief and swift. I am mainly using Ubuntu, RedHat and Linux Mint and CentOS, sorry if the commands dont work on your system.
|
I am glad that you are here! I started working on bioinformatics a few years ago (recently switched to cloud computing), and was amazed by those single-word bash commands which are much faster than my dull scripts, time saved through learning command-line shortcuts and scripting. Not all the code here is oneliner, but i put effort on making them brief and swift. I am mainly using Ubuntu, RedHat and Linux Mint and CentOS, sorry if the commands don't work on your system.
|
||||||
|
|
||||||
This blog will focus on simple bash commands for parsing data and Linux system maintenance that i acquired from work and LPIC exam. I apologize that there are no detailed citation for all the commands, but they are probably from dear Google and Stackoverflow.
|
This blog will focus on simple bash commands for parsing data and Linux system maintenance that i acquired from work and LPIC exam. I apologize that there are no detailed citation for all the commands, but they are probably from dear Google and Stackoverflow.
|
||||||
|
|
||||||
@ -34,8 +34,7 @@ Here's a more stylish version of [Bash-Oneliner](http://onceupon.github.io/Bash-
|
|||||||
```bash
|
```bash
|
||||||
Ctrl + n : same as Down arrow.
|
Ctrl + n : same as Down arrow.
|
||||||
Ctrl + p : same as Up arrow.
|
Ctrl + p : same as Up arrow.
|
||||||
Ctrl + r : begins a backward search through cammand history.(keep pressing Ctrl + r to move backward)
|
Ctrl + r : begins a backward search through command history.(keep pressing Ctrl + r to move backward)
|
||||||
Ctrl + l : Clear the terminal
|
|
||||||
Ctrl + s : to stop output to terminal.
|
Ctrl + s : to stop output to terminal.
|
||||||
Ctrl + q : to resume output to terminal after Ctrl + s.
|
Ctrl + q : to resume output to terminal after Ctrl + s.
|
||||||
Ctrl + a : move to the beginning of line.
|
Ctrl + a : move to the beginning of line.
|
||||||
@ -44,8 +43,6 @@ Ctrl + d : if you've type something, Ctrl + d deletes the character under the cu
|
|||||||
Ctrl + k : delete all text from the cursor to the end of line.
|
Ctrl + k : delete all text from the cursor to the end of line.
|
||||||
Ctrl + x + backspace : delete all text from the beginning of line to the cursor.
|
Ctrl + x + backspace : delete all text from the beginning of line to the cursor.
|
||||||
Ctrl + t : transpose the character before the cursor with the one under the cursor, press Esc + t to transposes the two words before the cursor.
|
Ctrl + t : transpose the character before the cursor with the one under the cursor, press Esc + t to transposes the two words before the cursor.
|
||||||
Ctrl + w : delete the word before the cursor.
|
|
||||||
Ctrl + u : delete the line before the cursor.
|
|
||||||
Ctrl + x + Ctrl + e : launch editor define by $EDITOR
|
Ctrl + x + Ctrl + e : launch editor define by $EDITOR
|
||||||
```
|
```
|
||||||
##### Change case
|
##### Change case
|
||||||
@ -158,7 +155,7 @@ grep -C 3 'bbo'
|
|||||||
grep -o 'S.*'
|
grep -o 'S.*'
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Extract text bewteen words (e.g. w1,w2)
|
##### Extract text between words (e.g. w1,w2)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
grep -o -P '(?<=w1).*(?=w2)'
|
grep -o -P '(?<=w1).*(?=w2)'
|
||||||
@ -582,7 +579,7 @@ awk '$1~/,/ {print}'
|
|||||||
awk '{split($2, a,",");for (i in a) print $1"\t"a[i]}' filename
|
awk '{split($2, a,",");for (i in a) print $1"\t"a[i]}' filename
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Print all lines before nth occurence of a string (e.g stop print lines when bbo appears 7 times)
|
##### Print all lines before nth occurrence of a string (e.g stop print lines when bbo appears 7 times)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
awk -v N=7 '{print}/bbo/&& --N<=0 {exit}'
|
awk -v N=7 '{print}/bbo/&& --N<=0 {exit}'
|
||||||
@ -981,7 +978,7 @@ while read a b c; do echo $(($c-$b));done < <(head filename)
|
|||||||
# Sum up column subtraction
|
# Sum up column subtraction
|
||||||
i=0; while read a b c; do ((i+=$c-$b)); echo $i; done < <(head filename)
|
i=0; while read a b c; do ((i+=$c-$b)); echo $i; done < <(head filename)
|
||||||
|
|
||||||
# Keep checking a running process (e.g. perl) and start another new process (e.g. python) immetiately after it. (BETTER use the wait command! Ctrl+F 'wait')
|
# Keep checking a running process (e.g. perl) and start another new process (e.g. python) immediately after it. (BETTER use the wait command! Ctrl+F 'wait')
|
||||||
while [[ $(pidof perl) ]];do echo f;sleep 10;done && python timetorunpython.py
|
while [[ $(pidof perl) ]];do echo f;sleep 10;done && python timetorunpython.py
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -1132,7 +1129,7 @@ TMOUT=10
|
|||||||
|
|
||||||
##### Set how long you want to run a command
|
##### Set how long you want to run a command
|
||||||
```bash
|
```bash
|
||||||
#This will run the commmand 'sleep 10' for only 1 second.
|
#This will run the command 'sleep 10' for only 1 second.
|
||||||
timeout 1 sleep 10
|
timeout 1 sleep 10
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -1366,7 +1363,7 @@ jobs -l
|
|||||||
export PATH=$PATH:~/path/you/want
|
export PATH=$PATH:~/path/you/want
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Make file execuable
|
##### Make file executable
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
chmod +x filename
|
chmod +x filename
|
||||||
@ -1650,7 +1647,7 @@ quota -v username
|
|||||||
```
|
```
|
||||||
|
|
||||||
##### Fork bomb
|
##### Fork bomb
|
||||||
# dont try this at home
|
# don't try this at home
|
||||||
```bash
|
```bash
|
||||||
:(){:|:&};:
|
:(){:|:&};:
|
||||||
```
|
```
|
||||||
@ -1688,7 +1685,7 @@ ulimit -u
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
nmap -sT -O localhost
|
nmap -sT -O localhost
|
||||||
#notice that some commpanies might not like you using nmap
|
#notice that some companies might not like you using nmap
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Print out number of cores/ processors
|
##### Print out number of cores/ processors
|
||||||
@ -1721,7 +1718,7 @@ shutdown -r +5 "Server will restart in 5 minutes. Please save your work."
|
|||||||
shutdown -c
|
shutdown -c
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Boardcast to all users
|
##### Broadcast to all users
|
||||||
```bash
|
```bash
|
||||||
wall -n hihi
|
wall -n hihi
|
||||||
```
|
```
|
||||||
@ -1898,7 +1895,7 @@ ssh -f -L 9000:targetservername:8088 root@192.168.14.72 -N
|
|||||||
#pidof
|
#pidof
|
||||||
pidof sublime_text
|
pidof sublime_text
|
||||||
|
|
||||||
#pgrep, you dont have to type the whole program name
|
#pgrep, you don't have to type the whole program name
|
||||||
pgrep sublim
|
pgrep sublim
|
||||||
|
|
||||||
#top, takes longer time
|
#top, takes longer time
|
||||||
@ -1920,7 +1917,7 @@ top|grep sublime_text
|
|||||||
[ioblazer](https://labs.vmware.com/flings/ioblazer) - multi-platform storage stack micro-benchmark.
|
[ioblazer](https://labs.vmware.com/flings/ioblazer) - multi-platform storage stack micro-benchmark.
|
||||||
[iozone](http://www.iozone.org/) - filesystem benchmark.
|
[iozone](http://www.iozone.org/) - filesystem benchmark.
|
||||||
[iperf3](https://iperf.fr/iperf-download.php) - measure TCP/UDP/SCTP performance.
|
[iperf3](https://iperf.fr/iperf-download.php) - measure TCP/UDP/SCTP performance.
|
||||||
[kcbench](https://github.com/knurd/kcbench) - kernel compile benchmark, compiles a kernel and messures the time it takes.
|
[kcbench](https://github.com/knurd/kcbench) - kernel compile benchmark, compiles a kernel and measures the time it takes.
|
||||||
[lmbench](http://www.bitmover.com/lmbench/) - Suite of simple, portable benchmarks.
|
[lmbench](http://www.bitmover.com/lmbench/) - Suite of simple, portable benchmarks.
|
||||||
[netperf](https://github.com/HewlettPackard/netperf) - measure network performance, test unidirectional throughput, and end-to-end latency.
|
[netperf](https://github.com/HewlettPackard/netperf) - measure network performance, test unidirectional throughput, and end-to-end latency.
|
||||||
[netpipe](https://linux.die.net/man/1/netpipe) - network protocol independent performance evaluator.
|
[netpipe](https://linux.die.net/man/1/netpipe) - network protocol independent performance evaluator.
|
||||||
@ -2064,7 +2061,7 @@ ip a
|
|||||||
ip r
|
ip r
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Display ARP cache (ARP cache displays the MAC addresses of deveice in the same network that you have connected to)
|
##### Display ARP cache (ARP cache displays the MAC addresses of device in the same network that you have connected to)
|
||||||
```bash
|
```bash
|
||||||
ip n
|
ip n
|
||||||
```
|
```
|
||||||
@ -2685,7 +2682,7 @@ example:
|
|||||||
q -d "," "select c3,c4,c5 from /path/to/file.txt where c3='foo' and c5='boo'"
|
q -d "," "select c3,c4,c5 from /path/to/file.txt where c3='foo' and c5='boo'"
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Sreen and tmux
|
##### Screen and tmux
|
||||||
create session and attach:
|
create session and attach:
|
||||||
```bash
|
```bash
|
||||||
screen
|
screen
|
||||||
@ -2735,7 +2732,7 @@ or
|
|||||||
tmux kill-session -t foo
|
tmux kill-session -t foo
|
||||||
```
|
```
|
||||||
scroll:
|
scroll:
|
||||||
(screeen)
|
(screen)
|
||||||
Hit your screen prefix combination (C-a / control+A), then hit Escape.
|
Hit your screen prefix combination (C-a / control+A), then hit Escape.
|
||||||
Move up/down with the arrow keys (↑ and ↓).
|
Move up/down with the arrow keys (↑ and ↓).
|
||||||
|
|
||||||
@ -2828,7 +2825,7 @@ tree
|
|||||||
```bash
|
```bash
|
||||||
#1. install virtualenv.
|
#1. install virtualenv.
|
||||||
sudo apt-get install virtualenv
|
sudo apt-get install virtualenv
|
||||||
#2. Creat a directory (name it .venv or whatever name your want) for your new shiny isolated environment.
|
#2. Create a directory (name it .venv or whatever name your want) for your new shiny isolated environment.
|
||||||
virtualenv .venv
|
virtualenv .venv
|
||||||
#3. source virtual bin
|
#3. source virtual bin
|
||||||
source .venv/bin/activate
|
source .venv/bin/activate
|
||||||
|
Loading…
Reference in New Issue
Block a user