MyException - 我的异常网
当前位置:我的异常网» 操作系统 » 和散仙学shell命令(五)

和散仙学shell命令(五)

www.MyException.Cn  网友分享于:2014-08-06  浏览:0次
跟散仙学shell命令(五)
今天散仙,要说的,是关于linux中的环境变量的使用,环境变量是用来存储有关shell会话和工作环境的信息,它允许在内存中访问存储数据,以便运行在shell上的程序和脚本访问。


在最常用的bash shell里,环境变量共分为二大类,一类是全局变量,另一类是局部变量。

全局变量:不仅对shell会话,可见,而且对所有的shell创建的子进程也可见。
局部变量:只对创建他们的shell可见。

在linux中(散仙这里是centos6.5),使用printenv,查看全局变量:
[root@h1 ~]# printenv 
HOSTNAME=h1
TERM=linux
SHELL=/bin/bash
HADOOP_HOME=/home/search/hadoop
HISTSIZE=1000
SSH_CLIENT=192.168.46.22 61369 22
SSH_TTY=/dev/pts/0
ANT_HOME=/usr/local/ant
USER=root
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.tbz=01;31:*.tbz2=01;31:*.bz=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf=01;36:
MAVEN_HOME=/usr/local/maven
MAIL=/var/spool/mail/root
PATH=.:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/jdk/bin:/home/search/hadoop/bin:/home/search/hadoop/sbin:/usr/local/ant/bin:/usr/local/maven/bin:/home/search/hive/bin:/home/search/hive/conf:/root/bin
HIVE_HOME=/home/search/hive
PWD=/root
JAVA_HOME=/usr/local/jdk
LANG=zh_CN.UTF-8
HADOOP_CONF_DIR=/home/search/hadoop/etc/hadoop/
HISTCONTROL=ignoredups
SHLVL=1
HOME=/root
LOGNAME=root
CLASSPATH=.:.::/usr/local/jdk/lib:/usr/local/jdk/jre/lib:/home/search/hadoop/lib:/usr/local/ant/lib:/usr/local/maven/lib:/home/search/hive/lib
SSH_CONNECTION=192.168.46.22 61369 192.168.46.32 22
LESSOPEN=|/usr/bin/lesspipe.sh %s
G_BROKEN_FILENAMES=1
_=/usr/bin/printenv
[root@h1 ~]# 


我们可以采用echo $变量名,来查看具体的环境变量值,注意变量名区分大小写
[root@h1 ~]# echo $HIVE_HOME
/home/search/hive
[root@h1 ~]# echo $HADOOP_HOME
/home/search/hadoop
[root@h1 ~]# echo $JAVA_HOME
/usr/local/jdk
[root@h1 ~]# echo $java_home

[root@h1 ~]# 


使用set命令,可以查看,全局变量和局部变量的并集
[root@h1 ~]# set
ANT_HOME=/usr/local/ant
BASH=/bin/bash
BASHOPTS=checkwinsize:cmdhist:expand_aliases:extquote:force_fignore:hostcomplete:interactive_comments:login_shell:progcomp:promptvars:sourcepath
BASH_ALIASES=()
BASH_ARGC=()
BASH_ARGV=()
BASH_CMDS=()
BASH_LINENO=()
BASH_SOURCE=()
BASH_VERSINFO=([0]="4" [1]="1" [2]="2" [3]="1" [4]="release" [5]="x86_64-redhat-linux-gnu")
BASH_VERSION='4.1.2(1)-release'
CLASSPATH=.:.::/usr/local/jdk/lib:/usr/local/jdk/jre/lib:/home/search/hadoop/lib:/usr/local/ant/lib:/usr/local/maven/lib:/home/search/hive/lib
COLORS=/etc/DIR_COLORS
COLUMNS=176
DIRSTACK=()
EUID=0
GROUPS=()
G_BROKEN_FILENAMES=1
HADOOP_CONF_DIR=/home/search/hadoop/etc/hadoop/
HADOOP_HOME=/home/search/hadoop
HISTCONTROL=ignoredups
HISTFILE=/root/.bash_history
HISTFILESIZE=1000
HISTSIZE=1000
HIVE_HOME=/home/search/hive
HOME=/root
HOSTNAME=h1
HOSTTYPE=x86_64
ID=0
IFS=$' \t\n'
JAVA_HOME=/usr/local/jdk
LANG=zh_CN.UTF-8
LESSOPEN='|/usr/bin/lesspipe.sh %s'
LINES=56
LOGNAME=root
LS_COLORS='rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.tbz=01;31:*.tbz2=01;31:*.bz=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf=01;36:'
MACHTYPE=x86_64-redhat-linux-gnu
MAIL=/var/spool/mail/root
MAILCHECK=60
MAVEN_HOME=/usr/local/maven
OPTERR=1
OPTIND=1
OSTYPE=linux-gnu
PATH=.:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/jdk/bin:/home/search/hadoop/bin:/home/search/hadoop/sbin:/usr/local/ant/bin:/usr/local/maven/bin:/home/search/hive/bin:/home/search/hive/conf:/root/bin
PIPESTATUS=([0]="0")
PPID=1129
PS1='[\u@\h \W]\$ '
PS2='> '
PS4='+ '
PWD=/root
SHELL=/bin/bash
SHELLOPTS=braceexpand:emacs:hashall:histexpand:history:interactive-comments:monitor
SHLVL=1
SSH_CLIENT='192.168.46.22 61369 22'
SSH_CONNECTION='192.168.46.22 61369 192.168.46.32 22'
SSH_TTY=/dev/pts/0
TERM=linux
TMOUT=3600
UID=0
USER=root
_=clear
colors=/etc/DIR_COLORS
[root@h1 ~]# 


设置局部环境变量:使用=号赋值,就可以,注意=号左右不要有空格(这是新手容易犯的错误)
[root@h1 ~]# test=qindongliang
[root@h1 ~]# echo $test
qindongliang
[root@h1 ~]# test = abc
-bash: test: =: unary operator expected
[root@h1 ~]# 

如果环境变量的值之间, 有空格,那么需要用单引号或者双引号,引起来。
[root@h1 ~]# name=a yellow dog
-bash: yellow: command not found
[root@h1 ~]# name='a yellow dog'
[root@h1 ~]# echo $name
a yellow dog
[root@h1 ~]# name2="a red dog"
[root@h1 ~]# echo $name2 
a red dog
[root@h1 ~]# 


每个会话shell设置的变量,仅仅在当前的shell里有效,如果开启新的会话,原来的设置会失效,但是我们退出后,又可以正常使用了:
[root@h1 ~]# name=a yellow dog
-bash: yellow: command not found
[root@h1 ~]# name='a yellow dog'
[root@h1 ~]# echo $name
a yellow dog
[root@h1 ~]# name2="a red dog"
[root@h1 ~]# echo $name2 
a red dog
[root@h1 ~]# bash
[root@h1 ~]# echo $name

[root@h1 ~]# exit
exit
[root@h1 ~]# echo $name2 
a red dog
[root@h1 ~]# 


设置全局环境变量我们需要使用export命令,来激活它,这样以来,它就会对所有的shell会话,生效:
[root@h1 ~]# color=red
[root@h1 ~]# echo $color
red
[root@h1 ~]# exp
expand  export  expr    
[root@h1 ~]# exp
expand  export  expr    
[root@h1 ~]# export  color
[root@h1 ~]# echo $color
red
[root@h1 ~]# bash
[root@h1 ~]# echo $color
red
[root@h1 ~]# bash
[root@h1 ~]# echo $color
red
[root@h1 ~]# 


卸载一个环境变量我们需要unset命令:
[root@h1 ~]# test=abc
[root@h1 ~]# echo $test 
abc
[root@h1 ~]# unset test
[root@h1 ~]# echo $test

[root@h1 ~]# 

注意,如果是全局变量,卸载只会在当前的shell有效,如果退出当前的shell后,那么这个变量依然有效。

在所有的环境变量里$PATH这个变量,非常重要,它是系统中查找的路径,这说明所有的shell脚本都会在这里面的几个目录下查找,PATH的每个目录都由冒号分隔,你可以通过在PATH变量的末尾,加个冒号来引用新添加的环境变量目录,这一点散仙相信,配置过JAVA系列的环境变量的工程师们都有体会。
[root@h1 ~]# echo $PATH
.:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/jdk/bin:/home/search/hadoop/bin:/home/search/hadoop/sbin:/usr/local/ant/bin:/usr/local/maven/bin:/home/search/hive/bin:/home/search/hive/conf:/root/bin
[root@h1 ~]# 


那么为什么需要PATH环境变量了,如果有了这个全局的变量,那么我们就可以在任何位置,执行这个脚本了:
假如,我在/root/test/下面有个,a.sh脚本,现在我想在任何位置都直接能够引用到这个脚本,该怎么做,此时,环境变量就该大显身手了,我们只需要把这个/root/test/配置到系统的PATH里面即可:
-rw-r--r-- 1 root root 23 8月   5 01:44 a.sh
[root@h1 test]# echo $PATH
.:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/jdk/bin:/home/search/hadoop/bin:/home/search/hadoop/sbin:/usr/local/ant/bin:/usr/local/maven/bin:/home/search/hive/bin:/home/search/hive/conf:/root/bin:/home/search/test
[root@h1 test]# PATH=$PATH:/root/t
test/       tsethadoop/ 
[root@h1 test]# PATH=$PATH:/root/test/
[root@h1 test]# echo $PATH
.:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/jdk/bin:/home/search/hadoop/bin:/home/search/hadoop/sbin:/usr/local/ant/bin:/usr/local/maven/bin:/home/search/hive/bin:/home/search/hive/conf:/root/bin:/home/search/test:/root/test/
[root@h1 test]# sh a.sh 
hellow World!
[root@h1 test]# cd /etc/
[root@h1 etc]# pwd
/etc
[root@h1 etc]# sh a.sh
hellow World!
[root@h1 etc]# cd  /home/
[root@h1 home]# sh a.sh
hellow World!
[root@h1 home]# 



当登陆一个linux系统时,bash shell依次会从4个不同的地方启动文件里的读取命令,顺序是:
1: /etc/profile
2:$HOME/.bash_profile
3:$HOME/.bash_login
4:$HOME/.profile

根目录下的几个文件以.开头的文件是隐藏的,我们可以使用ls -lFa查看:
[root@h1 ~]# ls -alF
总用量 328528
dr-xr-x---. 12 root   root      4096 8月   5 01:44 ./
dr-xr-xr-x. 22 root   root      4096 8月   5 01:12 ../
-rw-r--r--   1 root   root 143775368 7月  28 19:30 abc1.txt
-rw-------.  1 root   root      1087 6月  13 19:06 anaconda-ks.cfg
-rw-------.  1 root   root     10215 8月   5 01:32 .bash_history
-rw-r--r--.  1 root   root        18 5月  20 2009 .bash_logout
-rw-r--r--.  1 root   root       176 5月  20 2009 .bash_profile
-rw-r--r--.  1 root   root       119 6月  16 21:12 .bashrc
-rw-r--r--   1 root   root        52 7月  31 21:29 count2.txt
-rw-r--r--   1 root   root        52 7月  31 19:46 count.txt
-rw-r--r--.  1 root   root       100 9月  23 2004 .cshrc
-rw-r--r--.  1 root   root  96183833 6月   9 17:27 hadoop-2.2.0.tar.gz
-rw-r--r--   1 root   root         1 7月  31 21:25 hh.txt
drwxr-xr-x   3 root   root      4096 7月  29 04:47 hivesrc/
-rw-r--r--.  1 root   root      2111 6月  16 13:10 initserver.sh
-rw-r--r--.  1 root   root      7995 6月  13 19:06 install.log
-rw-r--r--.  1 root   root      3384 6月  13 19:06 install.log.syslog
drwxr-xr-x   2 root   root      4096 7月  31 21:19 intest/
lrwxrwxrwx   1 root   root        12 7月  31 21:45 jdk -> jdk1.7.0_25//
drwxr-xr-x.  8 search  143      4096 6月   6 2013 jdk1.7.0_25/
-rwx------.  1 root   root  96316511 11月 20 2013 jdk-7u25-linux-x64.gz*
drwxr-xr-x   3 root   root      4096 7月  31 21:33 li/
drwxr-xr-x   3 root   root      4096 7月   9 04:08 lo/
drwxr-xr-x   3 root   root      4096 7月   9 04:08 login/
drwxr-xr-x   3 root   root      4096 7月  29 04:11 .m2/
-rw-------   1 root   root       727 7月  29 01:44 .mysql_history
-rw-r--r--   1 root   root      1048 6月  19 03:31 setlimit.sh
drwx------.  2 root   root      4096 6月  16 21:00 .ssh/
-rw-r--r--.  1 root   root       129 12月  4 2004 .tcshrc
drwxr-xr-x   2 root   root      4096 8月   5 01:44 test/
drwxr-xr-x   3 root   root      4096 6月  20 02:51 tsethadoop/
-rw-------   1



除此之外,在/etc/profile.d/下的文件,会作为默认的加载的启动目录,这下面的所有的shell脚本都会被登陆时,激活,利用这个特性,我们可以将我们在系统登陆时,需要加载的脚本配置到这里,散仙在这里就是把JAVA系列有关的所有的HOME单独配置在这里的java.sh下:
export PATH=.:$PATH

export JAVA_HOME="/usr/local/jdk"
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin

export HADOOP_HOME=/home/search/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop/
export CLASSPATH=.:$CLASSPATH:$HADOOP_HOME/lib
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

export ANT_HOME=/usr/local/ant
export CLASSPATH=$CLASSPATH:$ANT_HOME/lib
export PATH=$PATH:$ANT_HOME/bin

export MAVEN_HOME="/usr/local/maven"
export CLASSPATH=$CLASSPATH:$MAVEN_HOME/lib
export PATH=$PATH:$MAVEN_HOME/bin


export HIVE_HOME=/home/search/hive
export CLASSPATH=$CLASSPATH:$HIVE_HOME/lib
export PATH=$PATH:$HIVE_HOME/bin:$HIVE_HOME/conf


[root@h1 profile.d]# cd /etc/profile.d/
[root@h1 profile.d]# ll
总用量 48
-rw-r--r--. 1 root root 1127 10月 17 2013 colorls.csh
-rw-r--r--. 1 root root 1143 10月 17 2013 colorls.sh
-rw-r--r--. 1 root root  192 8月  27 2013 glib2.csh
-rw-r--r--. 1 root root  192 8月  27 2013 glib2.sh
-rwxr-xr-x  1 root root  694 7月  29 19:13 java.sh
-rw-r--r--. 1 root root 1741 11月 23 2013 lang.csh
-rw-r--r--. 1 root root 2706 11月 23 2013 lang.sh
-rw-r--r--. 1 root root  122 2月   7 2007 less.csh
-rw-r--r--. 1 root root  108 2月   7 2007 less.sh
-rw-r--r--. 1 root root   97 4月   5 2012 vim.csh
-rw-r--r--. 1 root root  269 4月   5 2012 vim.sh
-rw-r--r--. 1 root root  169 5月  20 2009 which2.sh
[root@h1 profile.d]# ls -laF
总用量 56
drwxr-xr-x.  2 root root 4096 8月   5 01:58 ./
drwxr-xr-x. 61 root root 4096 8月   5 01:12 ../
-rw-r--r--.  1 root root 1127 10月 17 2013 colorls.csh
-rw-r--r--.  1 root root 1143 10月 17 2013 colorls.sh
-rw-r--r--.  1 root root  192 8月  27 2013 glib2.csh
-rw-r--r--.  1 root root  192 8月  27 2013 glib2.sh
-rwxr-xr-x   1 root root  694 7月  29 19:13 java.sh*
-rw-r--r--.  1 root root 1741 11月 23 2013 lang.csh
-rw-r--r--.  1 root root 2706 11月 23 2013 lang.sh
-rw-r--r--.  1 root root  122 2月   7 2007 less.csh
-rw-r--r--.  1 root root  108 2月   7 2007 less.sh
-rw-r--r--.  1 root root   97 4月   5 2012 vim.csh
-rw-r--r--.  1 root root  269 4月   5 2012 vim.sh
-rw-r--r--.  1 root root  169 5月  20 2009 which2.sh
[root@h1 profile.d]# 


另外一个很强大的功能是,通过一个可变数组,给某个变量赋值,记住=号左右不允许有空格出现,取值,使用${mytest[number]}
[root@h1 ~]# mytest=(one two three four) 
[root@h1 ~]# echo $mytest 
one
[root@h1 ~]# echo ${mytest[0]}
one
[root@h1 ~]# echo ${mytest[1]}
two
[root@h1 ~]# echo ${mytest[3]}
four
[root@h1 ~]# echo ${mytest[*]}
one two three four
[root@h1 ~]# 


*号,可以显示所有的值,改变值使用mytest[number]=value即可。
如果想卸载某个值,可以使用unset mytest[number]即可。


最后介绍一个,如何使用命令别名来简化shell命令写法,别名功能类似我们常用的SQL里面的as别名一样,可以给一个很长的表名,做一个简化的别名。

使用alias -p命令,查看系统默认的别名:
[root@h1 ~]# alias -p
alias cp='cp -f'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -f'
alias rm='rm -f'
alias vi='vim'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@h1 ~]# 

当然我们也可以定义自己的别名命令,例如散仙把lx='ls -lFa'可以显示隐藏文件的命令:
[root@h1 ~]# alias lx='ls -iFl'
[root@h1 ~]# lx
总用量 328468
655837 -rw-r--r--  1 root   root 143775368 7月  28 19:30 abc1.txt
659103 -rw-------. 1 root   root      1087 6月  13 19:06 anaconda-ks.cfg
663819 -rw-r--r--  1 root   root        52 7月  31 21:29 count2.txt
674329 -rw-r--r--  1 root   root        52 7月  31 19:46 count.txt
660638 -rw-r--r--. 1 root   root  96183833 6月   9 17:27 hadoop-2.2.0.tar.gz
663822 -rw-r--r--  1 root   root         1 7月  31 21:25 hh.txt
663837 drwxr-xr-x  3 root   root      4096 7月  29 04:47 hivesrc/
660644 -rw-r--r--. 1 root   root      2111 6月  16 13:10 initserver.sh
654083 -rw-r--r--. 1 root   root      7995 6月  13 19:06 install.log
654084 -rw-r--r--. 1 root   root      3384 6月  13 19:06 install.log.syslog
785488 drwxr-xr-x  2 root   root      4096 7月  31 21:19 intest/
674328 lrwxrwxrwx  1 root   root        12 7月  31 21:45 jdk -> jdk1.7.0_25//
659106 drwxr-xr-x. 8 search  143      4096 6月   6 2013 jdk1.7.0_25/
659105 -rwx------. 1 root   root  96316511 11月 20 2013 jdk-7u25-linux-x64.gz*
796184 drwxr-xr-x  3 root   root      4096 7月  31 21:33 li/
796042 drwxr-xr-x  3 root   root      4096 7月   9 04:08 lo/
663800 drwxr-xr-x  3 root   root      4096 7月   9 04:08 login/
663149 -rw-r--r--  1 root   root      1048 6月  19 03:31 setlimit.sh
674331 drwxr-xr-x  2 root   root      4096 8月   5 01:44 test/
663148 drwxr-xr-x  3 root   root      4096 6月  20 02:51 tsethadoop/


alias命令非常好用,是我们简化一长串命令的神器。

如果我们觉得这个命令,比较符合自己的胃口,我们可以在/etc/profile.d/目录下,新建自己的alias.sh脚本,里面定义自己的别名风格,这样以来,就可以在全局的shell会话里起作用了。








文章评论

如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
旅行,写作,编程
旅行,写作,编程
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
中美印日四国程序员比较
中美印日四国程序员比较
 程序员的样子
程序员的样子
每天工作4小时的程序员
每天工作4小时的程序员
2013年美国开发者薪资调查报告
2013年美国开发者薪资调查报告
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
程序员和编码员之间的区别
程序员和编码员之间的区别
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
如何成为一名黑客
如何成为一名黑客
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
代码女神横空出世
代码女神横空出世
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
我是如何打败拖延症的
我是如何打败拖延症的
程序员都该阅读的书
程序员都该阅读的书
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
程序员必看的十大电影
程序员必看的十大电影
老程序员的下场
老程序员的下场
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
编程语言是女人
编程语言是女人
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
Java程序员必看电影
Java程序员必看电影
总结2014中国互联网十大段子
总结2014中国互联网十大段子
程序员应该关注的一些事儿
程序员应该关注的一些事儿
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
漫画:程序员的工作
漫画:程序员的工作
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
我的丈夫是个程序员
我的丈夫是个程序员
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
那些性感的让人尖叫的程序员
那些性感的让人尖叫的程序员
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
鲜为人知的编程真相
鲜为人知的编程真相
那些争议最大的编程观点
那些争议最大的编程观点
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
为什么程序员都是夜猫子
为什么程序员都是夜猫子
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有