列表:
Linux笔记——vim常用操作及扩展补充[手册]
Linux笔记——linux常用命令集合
Linux笔记——命令:awk
Linux笔记——命令:sed
Linux笔记——命令:grep
Linux笔记——命令:find
Linux笔记——命令:Sort,uniq,join,cut,paste,split
Linux笔记——shell基础:变量&本地变量&位置变量&特定变量参数
Linux笔记——条件测试test
Linux笔记——控制流
Linux笔记——shell补充:参数传递&函数等
Linux笔记——正则表达式入门及应用
Linux笔记——linux进程
Linux笔记——SVN命令总结
rpm&yum包管理命令总结
鉴于博客,表格&排版&颜色标记等等无法显示,大家可以下载这个笔记的资源
12个文档,不需要积分,以目录+表格+颜色标记形式
下载资源地址http://download.csdn.net/detail/wklken/3815477
The end! Thx! wklken的笔记
-----------------------------------------------
变量:
|
变量可以定制本身的工作环境。使用变量可以保存有用的信息,是系统获取用户相关的设置,变量也用于保存暂时信息。
在默认情况下,所有变量都被看做字符串并以字符串来存储,即使它们被复制为数值时也是如此
变量赋值
1. 赋值等号两边不能有空格
2. 字符串通常放在双引号中,以防止被空白字符分开,同时又允许$扩展
|
分类:
|
四种变量:环境变量、本地变量、位置变量、特定变量参数
|
|
环境变量
|
可在命令行中设置,但是用户注销时值将丢失
最好在.profile中设置
系统管理员可在/etc/profile中设置
|
设置环境变量
|
$var-Name=value
$export var-Name
【退出登陆后也丢失】
或者
$export MYNAME=”ken”
|
显示环境变量
|
$echo $var-Name
|
查看所有环境变量
|
$env
|
消除环境变量
|
$unset var-Name
|
修改环境变量
|
$MYNAME=”tom”
|
嵌入shell变量[预留变量名,不做其他用途]
|
CDPATH
|
|
EXINIT
|
|
HOME
|
当前用户主目录【家目录】
|
IFS
|
输入域分隔符。当shell读入输入时,它给出的分割单词的一组字符。通常是空格、制表符及换行符
|
LOGNAME
|
当前用户的登录名
|
MAIL
|
|
MAILCHECK
|
每隔多少秒检查是否有新的信件
|
MAILPATH
|
|
PATH
|
决定了shell将到哪些目录中寻找命令或程序, 执行命令时所搜寻的目录
冒号分隔,用来搜索命令的目录列表
|
PS1
|
基本命令提示符,对于root用户是#,对于普通用户是$【在命令列时的提示号】
|
PS2
|
附属二级提示符,默认是“>”, 当命令尚未打完时,Shell 要求再输入时的提示号
|
SHELL
|
当前用户Shell类型
|
TERMINFO
|
|
TERM
|
|
TZ
|
时区
|
EDITOR
|
|
PWD
|
|
PAGER
|
|
MAINPATH
|
man 指令的搜寻路径
|
USER
|
|
本地变量
|
本地变量在用户现在的Shell生命周期中使用,只在 用户当前Shell生命期有意义,若在shell中启动另一进程或者退出,此值将无效
优点:用户不能对其他地Shell或进行设置此变量有效
|
设置方式:
|
$Var-name=value
或者
${Var-name=value}
若取值包含空格,可用双引号引起
例子:
$GREAT=”12345”
$echo $GREAT
$echo ${GREAT}
|
Var-Name=value
|
赋值
|
Var-Name+value
|
若设置了,重新赋值,否则赋值
|
Var-Name:?value
|
若未设置,显示未设用户错误信息
|
Var-Name?value
|
若未设置,显示系统错误信息
|
Var-Name:=value
|
若未设置,设置
|
Var-Name:-value
|
同上,但取值并不设置到var-Name,可以被替换
|
消除变量
|
$unset variable-name
例子:
$PC=”enterprise”
$unset PC
$echo $PC
|
显示所有本地shell变量
|
$set
|
结合变量值(将变量并排)
|
$echo ${v1}${v2}
|
测试变量是否取值:
|
$unset tom
$echo “${tom:?}” //若未设置返回系统错误信息
$echo “${tom:?”MyErrorMsg”}” //未设置返回自定义错误信息
$echo “The sky is ${COLOUR:-grey} today” //若未设置,使用grey,之后COLOUR仍未设置
$ehco “The sky is ${COLOUR:=grey} today” //若为设置,设置之,之后,COLOUR有值
|
使用变量保存系统命令参数
|
$SOURCE=”/etc/passwd”
$DEST=”/tmp/passwd.bak”
$cp $SOURCE $DEST
|
将变量设置为只读[不能再后期改变之]
|
$var-Name=value
$readonly var-Name
|
位置变量
|
执行脚本时向其传递参数
可传递多个,但是使用位置变量参数只能访问前9个
脚本名称 A B C D E F
$0 $1 $2 $3 $4 $5 $6
|
|
特定位置变量参数
|
运行时脚本的一些相关信息
|
$0
|
shell脚本名称
|
$#
|
传递到脚本的参数个数
|
$*
|
以一个单字符串显示所有想脚本传递的参数,与位置变量参数不同,此项参数可超9个【程序的所有参数】,各个参数之间使用环境变量IFS的第一个字符分隔开
|
$$
|
shell脚本运行的当前进程ID号【程序的PID】
|
$!
|
后台运行的最后一进程的进程ID号【执行上一个指令的PID】
|
$@
|
是$*的一种精巧变体,不适用IFS环境变量。但是使用时加引号,并在引号中返回每个参数
如果想访问脚本程序的参数,使用$@是明智的选择
|
$-
|
显示shell使用的当前选项,与set命令功能相同
|
$?
|
显示最后命令的退出状态,0表示成功,其他值表示出错【执行上一个指令的返回值】
|
附注:环境变量的设置及修改
|
Bash启动时读取以下文件
/etc/profile
~/.bash_profile
~/.bashrc
|
方法一:修改/etc/profile文件
|
如果你的计算机仅仅作为开发使用时推荐使用这种方法,因为所有用户的shell都有权使用这些环境变量,可能会给系统带来安全性问题。
(1)用文本编辑器打开/etc/profile 【对所有用户生效(永久的)】
(2)在profile文件末尾加入:
JAVA_HOME=/usr/share/jdk1.5.0_05
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
(3)重新登录
注:修改文件后要想马上生效还要运行# source /etc/profile不然只能在下次重进此用户时生效。
注解:
a. 你要将 /usr/share/jdk1.5.0_05jdk 改为你的jdk安装目录
b. linux下用冒号“:”来分隔路径
c. $PATH / $CLASSPATH / $JAVA_HOME 是用来引用原来的环境变量的值,在设置环境变量时特别要注意不能把原来的值给覆盖掉了,这是一种常见的错误。
d. CLASSPATH中当前目录“.”不能丢,把当前目录丢掉也是常见的错误。
e. export是把这三个变量导出为全局变量。
f. 大小写必须严格区分。
|
方法二:修改用户目录下的.bash_profile文件中增加变量
|
【对单一用户生效(永久的)】
这种方法更为安全,它可以把使用这些环境变量的权限控制到用户级别,如果你需要给某个用户权限使用这些环境变量,你只需要修改其个人用户主目录下的.bashrc文件就可以了。
(1)用文本编辑器打开用户目录下的.bashrc文件
(2)在.bashrc文件末尾加入:
set JAVA_HOME=/usr/share/jdk1.5.0_05
export JAVA_HOME
set PATH=$JAVA_HOME/bin:$PATH
export PATH
set CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export CLASSPATH
(3)重新登录
$ cd~ #到用户根目录下
$ ls -a #查看所有文件,包含隐藏的文件
$ vi .bash_profile#修改用户环境变量文件
例如:
编辑你的PATH声明,其格式为:
PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>
你可以自己加上指定的路径,中间用冒号隔开。
环境变量更改后,在用户下次登陆时生效。
如果想立刻生效,则可执行下面的语句:$source .bash_profile
|
方法三:直接在shell下设置变量
|
【只对当前shell(BASH)有效(临时的)】
不赞成使用这种方法,因为换个shell,你的设置就无效了,因此这种方法仅仅是临时使用,以后要使用的时候又要重新设置,比较麻烦。
只需在shell终端执行下列命令:
export JAVA_HOME=/usr/share/jdk1.5.0_05
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
|
分享到:
相关推荐
Linux笔记——shell基础:变量&本地变量&位置变量&特定变量参数 Linux笔记——条件测试test Linux笔记——控制流 Linux笔记——shell补充:参数传递&函数等 Linux笔记——正则表达式入门及应用 Linux笔记——linux...
linux运维学习笔记:Shell变量
linux运维学习笔记:Shell变量的数值运算
shell编程基础之变量 linux mooc笔记
工作笔记 shell 变量和运算符 工作笔记 shell 变量和运算符 工作笔记 shell 变量和运算符 工作笔记 shell 变量和运算符
Linux export命令用于设置或显示环境变量。 在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该次登陆操作。 语法 export [-fnp]...
shell变量的作用域 可以用export内置命令将局部变量设置为全局变量。 位置变量 用于向shell脚本传递信息。参数相关数目传入脚本,此数目任意多,但只有前9个可以被访问,使用shift命令可以改变限制。...
如shell编程需要的基础知识储备、shell脚本概念介绍及第一个脚本案例、shell脚本基础知识-作用地位-比其他语言优势、建立一个规范的shell脚本、执行shell脚本的多种方法及重要区别精讲、shell脚本开发的9点基本规范...
1.6.2 默认的shell环境变量与path变量的设置 37 1.7 Linux文件权限 40 1.7.1 Linux安全性 40 1.7.2 使用Linux用户组 46 1.7.3 解码文件权限 47 1.7.4 修改安全设置 49 1.8 vim编辑器 52 第2章 基本脚本编译 54 2.1 ...
三、处理用户的输入:命令行参数、特殊参数变量、移动变量、获取用户输入 四、呈现数据:在脚本中重定向输入与输出、创建自己的重定向、阻止输出、创建临时文件、记录消息 五、控制脚本:处理信号、后台运行脚本、非...
这个是我在学习Linux的时候做的思维导图笔记,主要是Linux的一些基础知识。免费提供下载,学习分享。 该文档分为以下几个部分: 1.shell语法:包含格式化输入输出、数组定义、变量定义方法、运算方法、流程控制、...
1,shell 是大小写敏感的,空格敏感的! a!=A a=1(正确)a = 1(错误) 2,清屏命令 clear ?3,declare -x variable 设置环境变量 ...【except:函数的参数是局部变量】 局部变量的自定义: local va=1定义局部变量,
shell学习笔记,主要介绍了shell变量、shell字符串、shell数组、shell传递参数、shell基本运算符
Linux基础详细笔记,包括基本命令,shell,环境变量配置、常用函数调用等
15:scp 远程和本地互传文件 语法:scp [参数] [原路径] [目标路径] 16:mv 剪切文件或该名 语法:mv[源文件或目录][目标目录] 17:ln 生成连接文件 语法:ln -s[原件名][目标文件] 常用命令/文件搜索 1:find 文件...
文章目录1.shell简介1)什么是shell2)shell脚本3)运行shell脚本4)shell注释5)shell编写的基本步骤2.shell变量1)命名变量2)使用变量3)变量类型3)变量操作3.shell字符串1)字符串类型2)字符串操作4.shell数组...
本文由TinyLab.org原创。 这里只是个人学习笔记,主要包括Shell概述、Shell变量、位置参数、特殊符号、别名、各种控制语句、函数等Shell编程知识。
清晰明了 介绍linux shell风格的循环 for 循环 (枚举循环) 格式 for 变量名 in 值列表 ; do 循环体 done ##值列表:核心部分,一系列由空格分开的字符串 例如: #!/bin/sh for n in asd 4r3 56h er34 657 tr ger ; ...
用法 df [-F FSType] [-abeghklntVvZ] [-o FSType 特定选项] [目录 | 块设备 | 资源] df -k 以kbytes显示文件大小的查看文件系统方式 六、显示文件内容 more 分屏显示文件的内容。 用法 more [-cdflrsuw] [-行...