Showing posts with label terminal. Show all posts
Showing posts with label terminal. Show all posts

Sunday, September 13, 2015

How to View All Environment Variable and Their Values

Mac:

Open a terminal window and type printenv
~$ printenv

Windows (DOS):

Open a Command Prompt and type set
c:\Users\username? set


Windows (Powershell):


Open a Powershell window and type Get-Childitem env:
PS C:\Users\username> Get-Childitem env:               


Links
Mac/Unix Bash Shell
Dos
Powershell

Friday, August 21, 2015

How to Add Your Current Git Branch to Your Terminal Prompt in Unix/Mac OSX?

1. Download the git-prompt.sh file from github using the curl command in the terminal window.
~ ? curl -Lo .git-prompt.sh https://raw.githubusercontent.com/git/git/master/contrib/completion/git-prompt.sh           

2. Add the following to your .bash_profile or .bashrc file:
if [ -f ~/.git-prompt.sh ]; then                                                                                            
   source ~/.git-prompt.sh                                                                                                  
   export PS1='\W\e[1;32m$(__git_ps1 "(%s)")\e[m\$ '                                                            
fi                                                                                                                                       

This small script adds an if statement to check if the file exists, sets the source to .git-prompt.sh, and set the PS1 variable to point to the __git_ps1 function in the .git-prompt.sh file.  The \e[1;32m and \e[m\ are color tags used to color the branch text.  

When you navigate to a folder that contains a git repository you should see something like the following:
GitProjectFolder (Master) $ git checkout NewBranch                                                           
GitProjectFolder (NewBranch) $                                                                                         


Links
Change the Terminal Command Prompt
Customizing the Color of Your Terminal Prompt

Tuesday, August 18, 2015

Nano Keyboard Shortcuts

Nano is an rich editor like Emacs and runs in the Terminal Window.  To access Nano help type Ctrl+G,  you'll be presented with a list of the commands available.  The following has been copied from Nano Keyboard Commands page.

NOTE: Any command prefixed with a caret symbol (^) means to use the Ctrl key (e.g., ^G means to press the Ctrl+G keys at the same time). Any command prefixed with the letter M means to press the Alt key (e.g., M-R means to press the Alt+R keys together).

Most Helpful!
Ctrl Key Combination
Function Key
Alt Key Combination
Description
***
^G
F1

Display the help text
***
^X
F2

Close the current file buffer / Exit from nano
***
^O
F3

Write the current file to disk

^J
F4

Justify the current paragraph

^R
F5

Insert another file into the current one
***
^W
F6

Search for a string or a regular expression
***
^Y
F7

Move to the previous screen
***
^V
F8

Move to the next screen
***
^K
F9

Cut the current line and store it in the cutbuffer
***
^U
F10

Uncut from the cutbuffer into the current line
***
^C
F11

Display the position of the cursor

^T
F12

Invoke the spell checker, if available
***
^_
F13
M-G
Go to line and column number
***
^\
F14
M-R
Replace a string or a regular expression

^^
F15
M-A
Mark text at the cursor position
***

F16
M-W
Repeat last search
***


M-^ or M-6
Copy the current line and store it in the cutbuffer



M-}
Indent the current line



M-{
Unindent the current line

^F


Move forward one character

^B


Move back one character

^Space


Move forward one word



M-Space
Move back one word
***
^P


Move to the previous line
***
^N


Move to the next line
***
^A


Move to the beginning of the current line
***
^E


Move to the end of the current line



M-( or M-9
Move to the beginning of the current paragraph



M-) or M-0
Move to the end of the current paragraph



M-\ or M-|
Move to the first line of the file



M-/ or M-?
Move to the last line of the file
***


M-]
Move to the matching bracket



M-- or M-_
Scroll up one line without scrolling the cursor



M-+ or M-=
Scroll down one line without scrolling the cursor
***


M-< or M-,
Switch to the previous file buffer
***


M-> or M-.
Switch to the next file buffer



M-V
Insert the next keystroke verbatim

^I


Insert a tab at the cursor position

^M


Insert a newline at the cursor position

^D


Delete the character under the cursor

^H


Delete the character to the left of the cursor



M-T
Cut from the cursor position to the end of the file



M-J
Justify the entire file



M-D
Count the number of words, lines, and characters
***
^L


Refresh (redraw) the current screen



M-X
Help mode enable/disable
***


M-C
Constant cursor position display enable/disable



M-O
Use of one more line for editing enable/disable



M-S
Smooth scrolling enable/disable



M-P
Whitespace display enable/disable



M-Y
Color syntax highlighting enable/disable



M-H
Smart home key enable/disable
***


M-I
Auto indent enable/disable



M-K
Cut to end enable/disable



M-L
Long line wrapping enable/disable



M-Q
Conversion of typed tabs to spaces enable/disable



M-B
Backup files enable/disable



M-F
Multiple file buffers enable/disable



M-M
Mouse support enable/disable



M-N
No conversion from DOS/Mac format enable/disable



M-Z
Suspension enable/disable




Customizing the Color of Your Terminal Prompt

I posted a quick tip a couple of weeks ago about on how to Change the Terminal Command Prompt.

I want to take it one step further and add custom color to the prompt and/or to a portion of the prompt.

 currentDirectory$   export PS1='\e[1;32m\W\e[m\$'                                                   
 currentDirectory$                                                                                                    

I found this link to be a good bash prompt overview of how to customize your terminal prompt and has a list of fore and background colors show below:

Foreground colors, Normal (non-bold) is the default, so the 0; prefix is optional.
\e[0;30m = Dark Gray
\e[1;30m = Bold Dark Gray
\e[0;31m = Red
\e[1;31m = Bold Red
\e[0;32m = Green
\e[1;32m = Bold Green
\e[0;33m = Yellow
\e[1;33m = Bold Yellow
\e[0;34m = Blue
\e[1;34m = Bold Blue
\e[0;35m = Purple
\e[1;35m = Bold Purple
\e[0;36m = Turquoise
\e[1;36m = Bold Turquoise
\e[0;37m = Light Gray
\e[1;37m = Bold Light Gray
Background colors:
\e[40m = Dark Gray
\e[41m = Red
\e[42m = Green
\e[43m = Yellow
\e[44m = Blue
\e[45m = Purple
\e[46m = Turquoise
\e[47m = Light Gray

Sunday, August 2, 2015

Set Command Line Path

export PATH="/USERS/joesmith/bin:$PATH"
  1. Put the following in you .bashrc or .bash_profile in you root/home directory:   export PATH="/USERS/joesmith/bin:$PATH"
  2. Restart Terminal


Create Alias Command in Bash

alias ll='ls -lahG'
  1. Put the following in you .bashrc or .bash_profile in you root/home directory:   alias ll='ls -lahG'
  2. Restart Terminal


Change the Terminal Command Prompt

export PS1="\w/\u$ "
  1. Put the following in you .bashrc or .bash_profile in you root/home directory:   export PS1= "\w/\u$ "
  2. Restart Terminal

Links
Bash Prompt Basics


Turn on GIT Autocompletion in Mac OSX



if [ -f ~/.git-completion.bash ]; then
   source ~/.git-completion.bash
fi
  1. Open up terminal and navigate to your root/home directory: cd ~
  2. Download git-completion.bash from github.com via the terminal by typing the following:          curl -Lo .git-completion.bash https://github.com/git/git/raw/master/contrib/completion/git-completion.bash 
  3. Put the following in you .bashrc or .bash_profile in you root/home directory:  
    if [ -f ~/.git-completion.bash ]; then
       source ~/.git-completion.bash
    fi
  4. Restart Terminal
  5. Navigate to you git repository
  6. Type "git a"+tab and you should see "git add" or try "git h"+tab and you should see "git help"

Links
Bash Scripting: How to
Bash Beginners Guide 
Advanced Bash Scripting