{ "metadata": { "name": "", "signature": "sha256:d6da9306516e7e363c08bf13bd61bd3a154b0d4cd9219b0c63bea4b86bc419b0" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Linux Commands\n", "\n", "* Disk Usage\n", "* Splitting Files\n", "* Grep\n", "* Compression\n", "* Terminal Syntax Highlighting\n", "* Vim" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Disk Usage" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Display human-readable (-h) free disk space:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "df -h" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Display human-readable (-h) disk usage statistics:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "du -h ./" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Display human-readable (-h) disk usage statistics, showing only the total usage (-s):" ] }, { "cell_type": "code", "collapsed": false, "input": [ "du -sh ../" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Display the human-readable (-h) disk usage statistics, showing also the grand total for all file types (-c):" ] }, { "cell_type": "code", "collapsed": false, "input": [ "du -csh ./" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Splitting Files" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Count number of lines in a file with wc:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "wc -l < file.txt" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Count the number of lines in a file with grep:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "grep -c \".\" file.txt" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Split a file into multiple files based on line count:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "split -l 20 file.txt new" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Split a file into multiple files based on line count, use suffix of length 1:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "split -l 802 -a 1 file.csv dir/part-user-csv.tbl-" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Grep" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Check number of files matching \u201c.txt\":" ] }, { "cell_type": "code", "collapsed": false, "input": [ "ls -1 | grep .txt | wc -l" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Check number of MapReduce records processed, outputting the results to the terminal:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "cat * | grep -c \"foo\" folder/part*" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Compression" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Uncompress all tar.gz in current directory to another directory" ] }, { "cell_type": "code", "collapsed": false, "input": [ "for i in *.tar.gz; do echo working on $i; tar xvzf $i -C directory/ ; done" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Terminal Syntax Highlighting" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Add the following to your ~/.bash_profile:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "export PS1='\\[\\033[01;32m\\]\\u@\\h\\[\\033[00m\\]:\\[\\033[01;34m\\]\\W\\[\\033[00m\\]\\$ '\n", "export CLICOLOR=1\n", "export LSCOLORS=ExFxBxDxCxegedabagacad\n", "alias ls='ls -GFh'" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Reload .bash_profile:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "source ~/.bash_profile" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Vim" ] }, { "cell_type": "code", "collapsed": false, "input": [ "Normal mode: esc\n", "\n", "Basic movement: h, j, k, l\n", "Word movement: w, W, e, E, b, B\n", "\n", "Go to matching parenthesis: %\n", "Go to start of the line: 0\n", "Go to end of the line: $\n", "\n", "Find character: f\n", "\n", "Insert mode: i\n", "Append to line: A\n", "\n", "Delete character: x\n", "Delete command: d\n", "Delete line: dd\n", "\n", "Replace command: r\n", "Change command: c\n", "\n", "Undo: u (U for all changes on a line)\n", "Redo: CTRL-R\n", "\n", "Copy the current line: yy\n", "Paste the current line: p (P for paste above cursor)\n", "\n", "Quit without saving changes: q!\n", "Write the current file and quit: :wq\n", "\n", "# Run the following command to enable the tutorial\n", "vimtutor\n", "\n", "# Run the following commands to enable syntax colors\n", "cd ~\n", "vim .vimrc\n", "syntax on\n", ":wq" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }