snipt

Ctrl+h for KB shortcuts

Bash

Bash aliases and functions

#Shopt
shopt -s autocd     #Permite realizar cambio de directorio poniendo solo la ruta del directorio
shopt -s cdspell    #Corrige automáticamente errores tipográficos en nombres de directorios al hacer cd


#Alias
alias cls="echo -ne '\033c'" #Limpia historial de scroll terminal
alias ..="cd .."
alias ...="cd ../.."
alias ...="cd ../../.."

alias dpkgs="dpkg -l|grep -i "  #Busca un paquete en los paquetes instalados

alias ls="ls -CF"
alias lsl="ls -lhFA | less"
alias ll="ls -lha"
alias la="ls -la"

alias fhere="find . -name "
alias df="df -Tha --total"
alias free="free -mt"
alias du="du -ach | sort -h"
alias psg="ps aux | grep -v grep | grep -i -e VSZ -e"
alais mkdir="mkdir -pv"

#Alias correctores
alias cd..="cd .."
alias lscpi=lspci
alias sl="ls"

function mkdircd () { mkdir -p "[email protected]" && eval cd "\"\$$#\""; }

#Alias para conexión a máquina virtual
alias ubuntu="VBoxManage startvm \"Ubuntu 14.04.3 LTS\";sleep 20; ssh [email protected]"

#Descarga recursiva de una URL, ignorando index y carpeta padre
#
#   rwget <num_dir> <url>
#   <num_dir> Número de directorios superiores a descartar
rwget () {
	wget -r --no-parent -nH --cut-dirs=$1 --reject="index.html*" $2
}

#Automaticación de extracción
function extract {
 if [ -z "$1" ]; then
    # display usage if no parameters given
    echo "Usage: extract <path/file_name>.<zip|rar|bz2|gz|tar|tbz2|tgz|Z|7z|xz|ex|tar.bz2|tar.gz|tar.xz>"
 else
    if [ -f $1 ] ; then
        # NAME=${1%.*}
        # mkdir $NAME && cd $NAME
        case $1 in
          *.tar.bz2)   tar xvjf ../$1    ;;
          *.tar.gz)    tar xvzf ../$1    ;;
          *.tar.xz)    tar xvJf ../$1    ;;
          *.lzma)      unlzma ../$1      ;;
          *.bz2)       bunzip2 ../$1     ;;
          *.rar)       unrar x -ad ../$1 ;;
          *.gz)        gunzip ../$1      ;;
          *.tar)       tar xvf ../$1     ;;
          *.tbz2)      tar xvjf ../$1    ;;
          *.tgz)       tar xvzf ../$1    ;;
          *.zip)       unzip ../$1       ;;
          *.Z)         uncompress ../$1  ;;
          *.7z)        7z x ../$1        ;;
          *.xz)        unxz ../$1        ;;
          *.exe)       cabextract ../$1  ;;
          *)           echo "extract: '$1' - unknown archive method" ;;
        esac
    else
        echo "$1 - file does not exist"
    fi
fi
}


# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    alias dir='dir --color=auto'
    alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi
https://snipt.net/embed/27107aadc495e4df892805cdd2030e90/
/raw/27107aadc495e4df892805cdd2030e90/
27107aadc495e4df892805cdd2030e90
bash
Bash
88
2019-06-26T06:28:04
True
False
False
Mar 10, 2016 at 11:08 AM
/api/public/snipt/144653/
bash-aliases-and-functions
<table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><a href="#L-1"> 1</a> <a href="#L-2"> 2</a> <a href="#L-3"> 3</a> <a href="#L-4"> 4</a> <a href="#L-5"> 5</a> <a href="#L-6"> 6</a> <a href="#L-7"> 7</a> <a href="#L-8"> 8</a> <a href="#L-9"> 9</a> <a href="#L-10">10</a> <a href="#L-11">11</a> <a href="#L-12">12</a> <a href="#L-13">13</a> <a href="#L-14">14</a> <a href="#L-15">15</a> <a href="#L-16">16</a> <a href="#L-17">17</a> <a href="#L-18">18</a> <a href="#L-19">19</a> <a href="#L-20">20</a> <a href="#L-21">21</a> <a href="#L-22">22</a> <a href="#L-23">23</a> <a href="#L-24">24</a> <a href="#L-25">25</a> <a href="#L-26">26</a> <a href="#L-27">27</a> <a href="#L-28">28</a> <a href="#L-29">29</a> <a href="#L-30">30</a> <a href="#L-31">31</a> <a href="#L-32">32</a> <a href="#L-33">33</a> <a href="#L-34">34</a> <a href="#L-35">35</a> <a href="#L-36">36</a> <a href="#L-37">37</a> <a href="#L-38">38</a> <a href="#L-39">39</a> <a href="#L-40">40</a> <a href="#L-41">41</a> <a href="#L-42">42</a> <a href="#L-43">43</a> <a href="#L-44">44</a> <a href="#L-45">45</a> <a href="#L-46">46</a> <a href="#L-47">47</a> <a href="#L-48">48</a> <a href="#L-49">49</a> <a href="#L-50">50</a> <a href="#L-51">51</a> <a href="#L-52">52</a> <a href="#L-53">53</a> <a href="#L-54">54</a> <a href="#L-55">55</a> <a href="#L-56">56</a> <a href="#L-57">57</a> <a href="#L-58">58</a> <a href="#L-59">59</a> <a href="#L-60">60</a> <a href="#L-61">61</a> <a href="#L-62">62</a> <a href="#L-63">63</a> <a href="#L-64">64</a> <a href="#L-65">65</a> <a href="#L-66">66</a> <a href="#L-67">67</a> <a href="#L-68">68</a> <a href="#L-69">69</a> <a href="#L-70">70</a> <a href="#L-71">71</a> <a href="#L-72">72</a> <a href="#L-73">73</a> <a href="#L-74">74</a> <a href="#L-75">75</a> <a href="#L-76">76</a> <a href="#L-77">77</a> <a href="#L-78">78</a> <a href="#L-79">79</a> <a href="#L-80">80</a> <a href="#L-81">81</a> <a href="#L-82">82</a> <a href="#L-83">83</a> <a href="#L-84">84</a> <a href="#L-85">85</a> <a href="#L-86">86</a> <a href="#L-87">87</a> <a href="#L-88">88</a></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span id="L-1"><a name="L-1"></a><span class="c1">#Shopt</span> </span><span id="L-2"><a name="L-2"></a><span class="nb">shopt</span> -s autocd <span class="c1">#Permite realizar cambio de directorio poniendo solo la ruta del directorio</span> </span><span id="L-3"><a name="L-3"></a><span class="nb">shopt</span> -s cdspell <span class="c1">#Corrige automáticamente errores tipográficos en nombres de directorios al hacer cd</span> </span><span id="L-4"><a name="L-4"></a> </span><span id="L-5"><a name="L-5"></a> </span><span id="L-6"><a name="L-6"></a><span class="c1">#Alias</span> </span><span id="L-7"><a name="L-7"></a><span class="nb">alias</span> <span class="nv">cls</span><span class="o">=</span><span class="s2">&quot;echo -ne &#39;\033c&#39;&quot;</span> <span class="c1">#Limpia historial de scroll terminal</span> </span><span id="L-8"><a name="L-8"></a><span class="nb">alias</span> ..<span class="o">=</span><span class="s2">&quot;cd ..&quot;</span> </span><span id="L-9"><a name="L-9"></a><span class="nb">alias</span> ...<span class="o">=</span><span class="s2">&quot;cd ../..&quot;</span> </span><span id="L-10"><a name="L-10"></a><span class="nb">alias</span> ...<span class="o">=</span><span class="s2">&quot;cd ../../..&quot;</span> </span><span id="L-11"><a name="L-11"></a> </span><span id="L-12"><a name="L-12"></a><span class="nb">alias</span> <span class="nv">dpkgs</span><span class="o">=</span><span class="s2">&quot;dpkg -l|grep -i &quot;</span> <span class="c1">#Busca un paquete en los paquetes instalados</span> </span><span id="L-13"><a name="L-13"></a> </span><span id="L-14"><a name="L-14"></a><span class="nb">alias</span> <span class="nv">ls</span><span class="o">=</span><span class="s2">&quot;ls -CF&quot;</span> </span><span id="L-15"><a name="L-15"></a><span class="nb">alias</span> <span class="nv">lsl</span><span class="o">=</span><span class="s2">&quot;ls -lhFA | less&quot;</span> </span><span id="L-16"><a name="L-16"></a><span class="nb">alias</span> <span class="nv">ll</span><span class="o">=</span><span class="s2">&quot;ls -lha&quot;</span> </span><span id="L-17"><a name="L-17"></a><span class="nb">alias</span> <span class="nv">la</span><span class="o">=</span><span class="s2">&quot;ls -la&quot;</span> </span><span id="L-18"><a name="L-18"></a> </span><span id="L-19"><a name="L-19"></a><span class="nb">alias</span> <span class="nv">fhere</span><span class="o">=</span><span class="s2">&quot;find . -name &quot;</span> </span><span id="L-20"><a name="L-20"></a><span class="nb">alias</span> <span class="nv">df</span><span class="o">=</span><span class="s2">&quot;df -Tha --total&quot;</span> </span><span id="L-21"><a name="L-21"></a><span class="nb">alias</span> <span class="nv">free</span><span class="o">=</span><span class="s2">&quot;free -mt&quot;</span> </span><span id="L-22"><a name="L-22"></a><span class="nb">alias</span> <span class="nv">du</span><span class="o">=</span><span class="s2">&quot;du -ach | sort -h&quot;</span> </span><span id="L-23"><a name="L-23"></a><span class="nb">alias</span> <span class="nv">psg</span><span class="o">=</span><span class="s2">&quot;ps aux | grep -v grep | grep -i -e VSZ -e&quot;</span> </span><span id="L-24"><a name="L-24"></a>alais <span class="nv">mkdir</span><span class="o">=</span><span class="s2">&quot;mkdir -pv&quot;</span> </span><span id="L-25"><a name="L-25"></a> </span><span id="L-26"><a name="L-26"></a><span class="c1">#Alias correctores</span> </span><span id="L-27"><a name="L-27"></a><span class="nb">alias</span> cd..<span class="o">=</span><span class="s2">&quot;cd ..&quot;</span> </span><span id="L-28"><a name="L-28"></a><span class="nb">alias</span> <span class="nv">lscpi</span><span class="o">=</span>lspci </span><span id="L-29"><a name="L-29"></a><span class="nb">alias</span> <span class="nv">sl</span><span class="o">=</span><span class="s2">&quot;ls&quot;</span> </span><span id="L-30"><a name="L-30"></a> </span><span id="L-31"><a name="L-31"></a><span class="k">function</span> mkdircd <span class="o">()</span> <span class="o">{</span> mkdir -p <span class="s2">&quot;</span><span class="nv">[email protected]</span><span class="s2">&quot;</span> <span class="o">&amp;&amp;</span> <span class="nb">eval</span> <span class="nb">cd</span> <span class="s2">&quot;\&quot;\$</span><span class="nv">$#</span><span class="s2">\&quot;&quot;</span><span class="p">;</span> <span class="o">}</span> </span><span id="L-32"><a name="L-32"></a> </span><span id="L-33"><a name="L-33"></a><span class="c1">#Alias para conexión a máquina virtual</span> </span><span id="L-34"><a name="L-34"></a><span class="nb">alias</span> <span class="nv">ubuntu</span><span class="o">=</span><span class="s2">&quot;VBoxManage startvm \&quot;Ubuntu 14.04.3 LTS\&quot;;sleep 20; ssh [email protected]&quot;</span> </span><span id="L-35"><a name="L-35"></a> </span><span id="L-36"><a name="L-36"></a><span class="c1">#Descarga recursiva de una URL, ignorando index y carpeta padre</span> </span><span id="L-37"><a name="L-37"></a><span class="c1">#</span> </span><span id="L-38"><a name="L-38"></a><span class="c1"># rwget &lt;num_dir&gt; &lt;url&gt;</span> </span><span id="L-39"><a name="L-39"></a><span class="c1"># &lt;num_dir&gt; Número de directorios superiores a descartar</span> </span><span id="L-40"><a name="L-40"></a>rwget <span class="o">()</span> <span class="o">{</span> </span><span id="L-41"><a name="L-41"></a> wget -r --no-parent -nH --cut-dirs<span class="o">=</span><span class="nv">$1</span> --reject<span class="o">=</span><span class="s2">&quot;index.html*&quot;</span> <span class="nv">$2</span> </span><span id="L-42"><a name="L-42"></a><span class="o">}</span> </span><span id="L-43"><a name="L-43"></a> </span><span id="L-44"><a name="L-44"></a><span class="c1">#Automaticación de extracción</span> </span><span id="L-45"><a name="L-45"></a><span class="k">function</span> extract <span class="o">{</span> </span><span id="L-46"><a name="L-46"></a> <span class="k">if</span> <span class="o">[</span> -z <span class="s2">&quot;</span><span class="nv">$1</span><span class="s2">&quot;</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span> </span><span id="L-47"><a name="L-47"></a> <span class="c1"># display usage if no parameters given</span> </span><span id="L-48"><a name="L-48"></a> <span class="nb">echo</span> <span class="s2">&quot;Usage: extract &lt;path/file_name&gt;.&lt;zip|rar|bz2|gz|tar|tbz2|tgz|Z|7z|xz|ex|tar.bz2|tar.gz|tar.xz&gt;&quot;</span> </span><span id="L-49"><a name="L-49"></a> <span class="k">else</span> </span><span id="L-50"><a name="L-50"></a> <span class="k">if</span> <span class="o">[</span> -f <span class="nv">$1</span> <span class="o">]</span> <span class="p">;</span> <span class="k">then</span> </span><span id="L-51"><a name="L-51"></a> <span class="c1"># NAME=${1%.*}</span> </span><span id="L-52"><a name="L-52"></a> <span class="c1"># mkdir $NAME &amp;&amp; cd $NAME</span> </span><span id="L-53"><a name="L-53"></a> <span class="k">case</span> <span class="nv">$1</span> in </span><span id="L-54"><a name="L-54"></a> *.tar.bz2<span class="o">)</span> tar xvjf ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-55"><a name="L-55"></a> *.tar.gz<span class="o">)</span> tar xvzf ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-56"><a name="L-56"></a> *.tar.xz<span class="o">)</span> tar xvJf ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-57"><a name="L-57"></a> *.lzma<span class="o">)</span> unlzma ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-58"><a name="L-58"></a> *.bz2<span class="o">)</span> bunzip2 ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-59"><a name="L-59"></a> *.rar<span class="o">)</span> unrar x -ad ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-60"><a name="L-60"></a> *.gz<span class="o">)</span> gunzip ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-61"><a name="L-61"></a> *.tar<span class="o">)</span> tar xvf ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-62"><a name="L-62"></a> *.tbz2<span class="o">)</span> tar xvjf ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-63"><a name="L-63"></a> *.tgz<span class="o">)</span> tar xvzf ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-64"><a name="L-64"></a> *.zip<span class="o">)</span> unzip ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-65"><a name="L-65"></a> *.Z<span class="o">)</span> uncompress ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-66"><a name="L-66"></a> *.7z<span class="o">)</span> 7z x ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-67"><a name="L-67"></a> *.xz<span class="o">)</span> unxz ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-68"><a name="L-68"></a> *.exe<span class="o">)</span> cabextract ../<span class="nv">$1</span> <span class="p">;;</span> </span><span id="L-69"><a name="L-69"></a> *<span class="o">)</span> <span class="nb">echo</span> <span class="s2">&quot;extract: &#39;</span><span class="nv">$1</span><span class="s2">&#39; - unknown archive method&quot;</span> <span class="p">;;</span> </span><span id="L-70"><a name="L-70"></a> <span class="k">esac</span> </span><span id="L-71"><a name="L-71"></a> <span class="k">else</span> </span><span id="L-72"><a name="L-72"></a> <span class="nb">echo</span> <span class="s2">&quot;</span><span class="nv">$1</span><span class="s2"> - file does not exist&quot;</span> </span><span id="L-73"><a name="L-73"></a> <span class="k">fi</span> </span><span id="L-74"><a name="L-74"></a><span class="k">fi</span> </span><span id="L-75"><a name="L-75"></a><span class="o">}</span> </span><span id="L-76"><a name="L-76"></a> </span><span id="L-77"><a name="L-77"></a> </span><span id="L-78"><a name="L-78"></a><span class="c1"># enable color support of ls and also add handy aliases</span> </span><span id="L-79"><a name="L-79"></a><span class="k">if</span> <span class="o">[</span> -x /usr/bin/dircolors <span class="o">]</span><span class="p">;</span> <span class="k">then</span> </span><span id="L-80"><a name="L-80"></a> <span class="nb">test</span> -r ~/.dircolors <span class="o">&amp;&amp;</span> <span class="nb">eval</span> <span class="s2">&quot;</span><span class="k">$(</span>dircolors -b ~/.dircolors<span class="k">)</span><span class="s2">&quot;</span> <span class="o">||</span> <span class="nb">eval</span> <span class="s2">&quot;</span><span class="k">$(</span>dircolors -b<span class="k">)</span><span class="s2">&quot;</span> </span><span id="L-81"><a name="L-81"></a> <span class="nb">alias</span> <span class="nv">ls</span><span class="o">=</span><span class="s1">&#39;ls --color=auto&#39;</span> </span><span id="L-82"><a name="L-82"></a> <span class="nb">alias</span> <span class="nv">dir</span><span class="o">=</span><span class="s1">&#39;dir --color=auto&#39;</span> </span><span id="L-83"><a name="L-83"></a> <span class="nb">alias</span> <span class="nv">vdir</span><span class="o">=</span><span class="s1">&#39;vdir --color=auto&#39;</span> </span><span id="L-84"><a name="L-84"></a> </span><span id="L-85"><a name="L-85"></a> <span class="nb">alias</span> <span class="nv">grep</span><span class="o">=</span><span class="s1">&#39;grep --color=auto&#39;</span> </span><span id="L-86"><a name="L-86"></a> <span class="nb">alias</span> <span class="nv">fgrep</span><span class="o">=</span><span class="s1">&#39;fgrep --color=auto&#39;</span> </span><span id="L-87"><a name="L-87"></a> <span class="nb">alias</span> <span class="nv">egrep</span><span class="o">=</span><span class="s1">&#39;egrep --color=auto&#39;</span> </span><span id="L-88"><a name="L-88"></a><span class="k">fi</span> </span></pre></div> </td></tr></table>
alias, bash
--- 
+++ 
@@ -0,0 +1,88 @@
+#Shopt
+shopt -s autocd     #Permite realizar cambio de directorio poniendo solo la ruta del directorio
+shopt -s cdspell    #Corrige automáticamente errores tipográficos en nombres de directorios al hacer cd
+
+
+#Alias
+alias cls="echo -ne '\033c'" #Limpia historial de scroll terminal
+alias ..="cd .."
+alias ...="cd ../.."
+alias ...="cd ../../.."
+
+alias dpkgs="dpkg -l|grep -i "  #Busca un paquete en los paquetes instalados
+
+alias ls="ls -CF"
+alias lsl="ls -lhFA | less"
+alias ll="ls -lha"
+alias la="ls -la"
+
+alias fhere="find . -name "
+alias df="df -Tha --total"
+alias free="free -mt"
+alias du="du -ach | sort -h"
+alias psg="ps aux | grep -v grep | grep -i -e VSZ -e"
+alais mkdir="mkdir -pv"
+
+#Alias correctores
+alias cd..="cd .."
+alias lscpi=lspci
+alias sl="ls"
+
+function mkdircd () { mkdir -p "[email protected]" && eval cd "\"\$$#\""; }
+
+#Alias para conexión a máquina virtual
+alias ubuntu="VBoxManage startvm \"Ubuntu 14.04.3 LTS\";sleep 20; ssh [email protected]"
+
+#Descarga recursiva de una URL, ignorando index y carpeta padre
+#
+#   rwget <num_dir> <url>
+#   <num_dir> Número de directorios superiores a descartar
+rwget () {
+	wget -r --no-parent -nH --cut-dirs=$1 --reject="index.html*" $2
+}
+
+#Automaticación de extracción
+function extract {
+ if [ -z "$1" ]; then
+    # display usage if no parameters given
+    echo "Usage: extract <path/file_name>.<zip|rar|bz2|gz|tar|tbz2|tgz|Z|7z|xz|ex|tar.bz2|tar.gz|tar.xz>"
+ else
+    if [ -f $1 ] ; then
+        # NAME=${1%.*}
+        # mkdir $NAME && cd $NAME
+        case $1 in
+          *.tar.bz2)   tar xvjf ../$1    ;;
+          *.tar.gz)    tar xvzf ../$1    ;;
+          *.tar.xz)    tar xvJf ../$1    ;;
+          *.lzma)      unlzma ../$1      ;;
+          *.bz2)       bunzip2 ../$1     ;;
+          *.rar)       unrar x -ad ../$1 ;;
+          *.gz)        gunzip ../$1      ;;
+          *.tar)       tar xvf ../$1     ;;
+          *.tbz2)      tar xvjf ../$1    ;;
+          *.tgz)       tar xvzf ../$1    ;;
+          *.zip)       unzip ../$1       ;;
+          *.Z)         uncompress ../$1  ;;
+          *.7z)        7z x ../$1        ;;
+          *.xz)        unxz ../$1        ;;
+          *.exe)       cabextract ../$1  ;;
+          *)           echo "extract: '$1' - unknown archive method" ;;
+        esac
+    else
+        echo "$1 - file does not exist"
+    fi
+fi
+}
+
+
+# enable color support of ls and also add handy aliases
+if [ -x /usr/bin/dircolors ]; then
+    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
+    alias ls='ls --color=auto'
+    alias dir='dir --color=auto'
+    alias vdir='vdir --color=auto'
+
+    alias grep='grep --color=auto'
+    alias fgrep='fgrep --color=auto'
+    alias egrep='egrep --color=auto'
+fi