免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2530 | 回复: 3
打印 上一主题 下一主题

安装tomcat [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-05-13 19:22 |只看该作者 |倒序浏览
为了学习java,需要一个服务器,因此决定用比较流行的tomcat。根据网上对安装tomcat的介绍,自己进行了安装,现在已经成功了,现在把安装的过程进行记录,也供大家学习参考。
   一、从官方网站上下载tomcat软件包。
    http://tomcat.apache.org/
   点击左侧的 download的一个版本,我选择的是 tomcat6.x,你可以根据自己的实际情况进行选择安装,点击超连接,选择 Binary Distributions 下的tar.gz (pgp, md5) 压缩包,进行下载
   二、下载到本地后,进行解压

    #tar zxvf apach-tomcat-6.0.16.tar.gz
    #mv apach-tomcat-6.0.16 /usr/local

   三、进行tomcat环境的配置(前提需要安装jdk)
    #vi /etc/profile

    export JAVA_HOME=/usr/local/jdk1.6.0_04
    export TOMCAT_HOME=/usr/local/apach-tomcat-6.0.16
   
    保存退出
      
    # source /etc/profile  //让当前配置立即生效
   
    四、启动tomcat服务器
    $ /usr/local/apach-tomcat-6.0.16/bin/startup.sh
    我的电脑上会出现如下内容:
    Using CATALINA_BASE:   /usr/local/apache-tomcat-6.0.16
    Using CATALINA_HOME:   /usr/local/apache-tomcat-6.0.16
    Using CATALINA_TMPDIR: /usr/local/apache-tomcat-6.0.16/temp
    Using JRE_HOME:       /usr/local/jdk1.6.0_04
    五、在浏览器中输入http://localhost:8080/就可以看到tomcat的log了
    tomcat的安装到此结束。
   
windows下apache、tomcat、iis整合  -  [ web apache Tomcat IIS ]

1、修改Apache配置文件。

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

LoadModule jk_module modules/mod_jk-1.2.14-apache-2.0.54.so
JkWorkersFile "C:/Apache Group/Tomcat 5.0/conf/workers.properties"
JkLogFile "C:/Apache Group/Tomcat 5.0/logs/mod_jk2.log"
JkLogLevel info


<VirtualHost *:80>

ServerName localhost
ServerAlias 127.0.0.1 192.168.1.204
DocumentRoot htdocs

</VirtualHost>

<VirtualHost *:80>

ServerName http://www.ttt1.com/
ProxyPass / http://www.ttt1.com:88/
ProxyPassReverse / http://www.ttt1.com:88/

</VirtualHost>

<VirtualHost *:80>

ServerName http://www.ttt2.com/
DocumentRoot "D:/eclipse/workspace/test"
DirectoryIndex index.html index.htm index.jsp
JkMount /servlet/* ajp13
JkMount /*.jsp ajp13
JkMount /*.do ajp13
JkMount /*.ftl ajp13

Alias /test "D:/eclipse/workspace/test/WebRoot"

<Directory "D:/eclipse/workspace/test/WebRoot">
    Options MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

</VirtualHost>

2、workers.properties文件内容

workers.tomcat_home="C:/Apache Group/Tomcat 5.0"
workers.java_home=C:/j2sdk1.4.2_08
ps=\
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=www.ttt2.com
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1
apache与resin的组合  -  [ web apache resin ]


apache与resin1的组合。

在apache的配置文件中加:

LoadModule caucho_module "x:/resin/srun/win32-1.3.6/mod_caucho.dll"
<IfModule mod_caucho.c>
CauchoConfigFile "x:/resin/conf/resin.conf"
<Location /caucho-status>
SetHandler caucho-status
</Location>
</IfModule>

AddHandler caucho-request jsp
<Location /servlet/*>
SetHandler caucho-request
</Location>

apache与resin2的组合。

在apache的配置文件中加:
LoadModule caucho_module "x:/resin/srun/win32-1.3.6/mod_caucho.dll"
<IfModule mod_caucho.c>
CauchoConfigFile "x:/resin/conf/resin.conf"
<Location /caucho-status>
SetHandler caucho-status
</Location>
</IfModule>

apache与resin3的组合。

在apache的配置文件中加:
LoadModule caucho_module x:/resin/libexec/apache-2.0/mod_caucho.dll

<IfModule mod_caucho.c>
ResinConfigServer localhost 6802
<Location /caucho-status>
SetHandler caucho-status
</Location>
</IfModule>

AddHandler caucho-request jsp
<Location /servlet/*>
SetHandler caucho-request
</Location>
windows下apache与IIS的组合  -  [ apache IIS ]


apache和IIS都是默认80端口,但是如果你不得不用asp程序的话,不要想着去用iasp之类的东西,还是在服务器安装IIS吧,安装以后把IIS修改端口,然后通过代理的方式来访问IIS,达到不需要显露端口的目的。

1、修改Apache配置文件,启用Proxy模块;

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

2、继续修改Apache配置文件,让Apache处理对IIS的访问;(这里假使你用的IIS端口为88)
ProxyPass /iis/ http://127.0.0.1:88/
ProxyPassReverse /iis http://127.0.0.1:88

如果你要使用虚拟主机来实现,可以用下面的代码,(这里是video.com.cn的)

<VirtualHost 211.154.103.23:80>
ServerAdmin blog@video.com.cn
ServerName blog.video.com.cn
ProxyPass / http://211.154.103.23:88/
ProxyPassReverse / http://211.154.103.23:88/
</VirtualHost>
Apache虚拟主机和虚拟目录的设置  -  [ web apache ]


一、基于名称的虚拟主机

打开Apache2\conf下的httpd.conf,查找#NameVirtualHost *:80,去掉前面的注释。
添加虚拟主机http://www.test.com/,在httpd.conf的最后,添加如下代码:
<VirtualHost *:80>

ServerName http://www.test.com/              #主机名
ServerAlias test.com *.test.com      #别名
DocumentRoot "d:/test"               #所在目录

</VirtualHost>

二、增加虚拟目录
1、全局的
如httpd.conf中的/icons/
Alias /icons/ "C:/Apache Group/Apache2/icons/"

<Directory "C:/Apache Group/Apache2/icons">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

2、虚拟主机内的

在<VirtualHost *:80></VirtualHost>之间添加上面内容
如:
<VirtualHost *:80>

ServerName http://www.test.com/              #主机名
ServerAlias test.com *.test.com      #别名
DocumentRoot "d:/test"               #所在目录

Alias /pic "d:/pic"

<Directory "d:/pic">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

</VirtualHost>
win2003下Apache2.0.54与tomcat5.0.28整合  -  [ web Tomcat apache ]


一、配置Apache2.0.54

1. 将下载的mod_jk-1.2.14-apache-2.0.54.so复制到Apache2\modules下。
2. 设置主页文件类型:打开Apache2\conf下的httpd.conf,查找"DirectoryIndex", 在index.html的后面添加index.jsp并保存,注意相互之间应有空格。(或如下面步骤3所设)
3.设置虚拟主机,让Apache自动控制html与jsp的解析: 打开Apache2\conf\httpd.conf,在最后加入下面这段代码并保存。

#设置Apache与Tomcat之间的连接,让Apache遇到jsp文件时,在后台将其交由Tomcat去处理
# Using mod_jk2.dll to redirect dynamic calls to Tomcat
LoadModule jk_module mod_jk-1.2.14-apache-2.0.54.so
JkWorkersFile "D:/Tomcat 5.0/conf/workers.properties"
JkLogFile "D:/Tomcat 5.0/logs/mod_jk2.log"
JkLogLevel info

#设置虚拟主机,基于名称的虚拟主机

ServerAdmin admin@cld.cn
DocumentRoot f:/StudioOnion/WEB_Project/shsc
ServerName shsc.cld.cn
DirectoryIndex index.html index.htm index.jsp
ErrorLog logs/shsc-error_log.txt
CustomLog logs/shsc-access_log.txt common
JkMount /servlet/* ajp13 #让Apache支持对servlet传送,用以Tomcat解析
JkMount /*.jsp ajp13 #让Apache支持对jsp传送,用以Tomcat解析

二、配置Tomcat5.0.28
1.在D:\Tomcat 5.0.2\conf下新建一个文件workers.properties 注意文件后缀,其内容如下:
workers.tomcat_home=d:\Tomcat5.0.2#让mod_jk模块知道Tomcat
workers.java_home=d:\jdk1.4.1 #让mod_jk模块知道j2sdk
ps=\
worker.list=ajp13 #模块版本,现有ajp14了,不要修改
worker.ajp13.port=8009 #工作端口,若没占用则不用修改
worker.ajp13.host=localhost #本机,若上面的Apache主机不为localhost,作相应修改
worker.ajp13.type=ajp13 #类型
worker.ajp13.lbfactor=1 #代理数,不用修改

论坛徽章:
0
2 [报告]
发表于 2010-05-13 19:30 |只看该作者
find 查找路径 -name 'name' -print  
find . -name "目录名"
find ./ -name 目录名 -type d -exec ls -l {} \;  
find / -name filename
locate
如果只显示所在目录的路径:
find 目录 -type d -name "查询目录名" -printf "%h\n"

如果同时显示目录名称和所在目录的路径:
find 目录 -type d -name "查询目录名" -printf "%p %h\n"


  linux 查找目录或文件 收藏


查找目录:find /(查找范围) -name '查找关键字' -type d
查找文件:find /(查找范围) -name 查找关键字 -print





如果需要更进一步的了解,可以参看Linux的命令详解。

这里摘抄如下:



·find path -option [ -print ] [ -exec -ok command ] {} \;
#-print 将查找到的文件输出到标准输出
#-exec command {} \;     -----将查到的文件执行command操作,{} 和 \;之间有空格
#-ok 和-exec相同,只不过在操作前要询用户

====================================================

-name filename             #查找名为filename的文件
-perm                       #按执行权限来查找
-user   username            #按文件属主来查找
-group groupname            #按组来查找
-mtime -n +n               #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime   -n +n              #按文件访问时间来查
-perm                        #按执行权限来查找
-user   username            #按文件属主来查找
-group groupname            #按组来查找
-mtime -n +n               #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime   -n +n              #按文件访问时间来查找文件,-n指n天以内,+n指n天以前
-ctime   -n +n              #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup                    #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser                     #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer f1 !f2              找文件,-n指n天以内,+n指n天以前
-ctime   -n +n              #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup                    #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser                     #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer f1 !f2              #查更改时间比f1新但比f2旧的文件
-type    b/d/c/p/l/f        #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size     n[c]              #查长度为n块[或n字节]的文件
-depth                      #使查找在进入子目录前先行查找完本目录
-fstype                     #查更改时间比f1新但比f2旧的文件
-type    b/d/c/p/l/f        #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size     n[c]              #查长度为n块[或n字节]的文件
-depth                      #使查找在进入子目录前先行查找完本目录
-fstype                     #查位于某一类型文件系统中的文件,这些文件系统类型通常可 在/etc/fstab中找到
-mount                      #查文件时不跨越文件系统mount点
-follow                     #如果遇到符号链接文件,就跟踪链接所指的文件
-cpio                   #查位于某一类型文件系统中的文件,这些文件系统类型通常可 在/etc/fstab中找到
-mount                      #查文件时不跨越文件系统mount点
-follow                     #如果遇到符号链接文件,就跟踪链接所指的文件
-cpio                       #对匹配的文件使用cpio命令,将他们备份到磁带设备中
-prune                      #忽略某个目录

====================================================
$find ~ -name "*.txt" -print    #在$HOME中查.txt文件并显示
$find .   -name "*.txt" -print
$find .   -name "[A-Z]*" -pri26nbsp;   #对匹配的文件使用cpio命令,将他们备份到磁带设备中
-prune                              #忽略某个目录

=====================================================
$find ~ -name "*.txt" -print    #在$HOME中查.txt文件并显示
$find .   -name "*.txt" -print
$find .   -name "[A-Z]*" -print #查以大写字母开头的文件
$find /etc -name "host*" -print #查以host开头的文件
$find . -name "[a-z][a-z][0--9][0--9].txt"   -print #查以两个小写字母和两个数字开头的txt文件
$find . -perm 755 -print
$find . -perm -007 -exec ls -l {} \; #查所有用户都可读写执行的文件同-perm 777
$find . -type d -print
$find . ! -type d -print
$find . -type l -print

$find . -size +1000000c -print       #查长度大于1Mb的文件
$find . -size 100c        -print      # 查长度为100c的文件
$find . -size +10 -print             #查长度超过期作废10块的文件(1块=512字节)

$cd /
$find etc home apps   -depth -print | cpio -ivcdC65536 -o /dev/rmt0
$find /etc -name "passwd*" -exec grep "cnscn" {} \; #看是否存在cnscn用户
$find . -name "yao*" | xargs file
$find . -name "yao*" | xargs echo   "" > /tmp/core.log
$find . -name "yao*" | xargs chmod o-w

======================================================

find -name april*                      在当前目录下查找以april开始的文件
find -name april* fprint file        在当前目录下查找以april开始的文件,并把结果输出到file中
find -name ap* -o -name may* 查找以ap或may开头的文件
find /mnt -name tom.txt -ftype vfat 在/mnt下查找名称为tom.txt且文件系统类型为vfat的文件
find /mnt -name t.txt ! -ftype vfat   在/mnt下查找名称为tom.txt且文件系统类型不为vfat的文件
find /tmp -name wa* -type l           在/tmp下查找名为wa开头且类型为符号链接的文件
find /home -mtime -2                 在/home下查最近两天内改动过的文件
find /home   -atime -1                  查1天之内被存取过的文件
find /home -mmin   +60                  在/home下查60分钟前改动过的文件
find /home -amin +30                  查最近30分钟前被存取过的文件
find /home -newer tmp.txt             在/home下查更新时间比tmp.txt近的文件或目录
find /home -anewer tmp.txt            在/home下查存取时间比tmp.txt近的文件或目录
find /home -used -2                  列出文件或目录被改动过之后,在2日内被存取过的文件或目录
find /home -user cnscn                列出/home目录内属于用户cnscn的文件或目录
find /home -uid +501                 列出/home目录内用户的识别码大于501的文件或目录
find /home -group cnscn              列出/home内组为cnscn的文件或目录
find /home -gid 501                   列出/home内组id为501的文件或目录
find /home -nouser                    列出/home内不属于本地用户的文件或目录
find /home -nogroup                   列出/home内不属于本地组的文件或目录
find /home   -name tmp.txt   -maxdepth 4 列出/home内的tmp.txt 查时深度最多为3层
find /home -name tmp.txt -mindepth 3 从第2层开始查
find /home -empty                     查找大小为0的文件或空目录
find /home -size +512k               查大于512k的文件
find /home -size -512k               查小于512k的文件
find /home -links +2                 查硬连接数大于2的文件或目录
find /home -perm 0700                查权限为700的文件或目录
find /tmp -name tmp.txt -exec cat {} \;
find /tmp -name tmp.txt -ok rm {} \;

find   / -amin   -10       # 查找在系统中最后10分钟访问的文件
find   / -atime -2         # 查找在系统中最后48小时访问的文件
find   / -empty              # 查找在系统中为空的文件或者文件夹
find   / -group cat        # 查找在系统中属于 groupcat的文件
find   / -mmin -5         # 查找在系统中最后5分钟里修改过的文件
find   / -mtime -1        #查找在系统中最后24小时里修改过的文件
find   / -nouser             #查找在系统中属于作废用户的文件
find   / -user   fred       #查找在系统中属于FRED这个用户的文件

查当前目录下的所有普通文件
--------------------------------------------------------------------------------

# find . -type f -exec ls -l {} \;
-rw-r--r--    1 root     root        34928 2003-02-25 ./conf/httpd.conf
-rw-r--r--    1 root     root        12959 2003-02-25 ./conf/magic
-rw-r--r--    1 root     root          180 2003-02-25 begin_of_the_skype_highlighting              180 2003-02-25      end_of_the_skype_highlighting ./conf.d/README
查当前目录下的所有普通文件,并在- e x e c选项中使用ls -l命令将它们列出


=================================================
在/ l o g s目录中查找更改时间在5日以前的文件并删除它们:
$ find logs -type f -mtime +5 -exec -ok rm {} \;


=================================================
查询当天修改过的文件
[root@book class]# find ./ -mtime -1 -type f -exec ls -l {} \;


=================================================
查询文件并询问是否要显示
[root@book class]# find ./ -mtime -1 -type f -ok ls -l {} \;
< ls ... ./classDB.inc.php > ? y
-rw-r--r--    1 cnscn    cnscn       13709 1月 12 12:22 ./classDB.inc.php
[root@book class]# find ./ -mtime -1 -type f -ok ls -l {} \;
< ls ... ./classDB.inc.php > ? n
[root@book class]#

=================================================
查询并交给awk去处理
[root@book class]# who | awk '{print $1"\t"$2}'
cnscn   pts/0

=================================================
awk---grep---sed

[root@book class]# df -k | awk '{print $1}' | grep -v 'none' | sed s"/\/dev\///g"
文件系统
sda2
sda1
[root@book class]# df -k | awk '{print $1}' | grep -v 'none'
文件系统
/dev/sda2
/dev/sda1


1)在/tmp中查找所有的*.h,并在这些文件中查找“SYSCALL_VECTOR",最后打印出所有包含"SYSCALL_VECTOR"的文件名

A) find /tmp -name "*.h" | xargs -n50 grep SYSCALL_VECTOR
B) grep SYSCALL_VECTOR /tmp/*.h | cut   -d':' -f1| uniq > filename
C) find /tmp -name "*.h" -exec grep "SYSCALL_VECTOR" {} \; -print


2)find / -name filename -exec rm -rf {} \;
find / -name filename -ok rm -rf {} \;


3)比如要查找磁盘中大于3M的文件:
find . -size +3000k -exec ls -ld {} ;


4)将find出来的东西拷到另一个地方
find *.c -exec cp '{}' /tmp ';'

如果有特殊文件,可以用cpio,也可以用这样的语法:
find dir -name filename -print | cpio -pdv newdir


6)查找2004-11-30 16:36:37时更改过的文件
# A=`find ./ -name "*php"` | ls -l --full-time $A 2>/dev/null | grep "2004-11-30 16:36:37"

论坛徽章:
0
3 [报告]
发表于 2010-05-13 19:34 |只看该作者
inux下安装jdk和tomcat详细步骤
linux下安装jdk和tomcat
首先需要下载的是jdk和tomcat的安装文件
作者下载到的是jdk-6u1-linux-i586.bin
apache-tomcat-6.0.10.zip

所需软件
apache-tomcat-6.0.20下载地址http://apache.justdn.org/tomcat/tomcat-6/v6.0.20 /bin/apache-tomcat-6.0.20.tar.gz 下载该文件apache-tomcat-6.0.20.tar.gz
Jdk 1_5_0_04下载地址http://java.sun.com/j2se/1.5.0/download.jsp下载该文件jdk-1_5_0_04-linux-i586-rpm.bin

将下载的文件拷贝到自定义目录中,作者是放在/usr/local下
然后进去此目录,执行:chmod 777 filename将权限放到最大,使他们变成可执行状态!
1.安装JDK
进入JDK安装文件所在的目录,执行:./jdk-6u1-linux-i586.bin
出现了很多信息(英文的,很恐怖!不过别害怕,只是些许可协议),按空格到最后,出现询问是否同意许可协议,输入y或yes回车。过一会JDK就安装完成了。
安装完成后,还不能立即使用,因为系统还不知道你到底把JDK装到什么地方去了,所以我们还要配置环境变量!执行:cd /etc
vi profile.d
#set java environment variables
export JAVA_HOME=/usr/jdk1.5.0_10
export CLASSPATH=.JAVA_HOME/lib/dt.jarJAVA_HOME/lib/tools.jar:.
export PATH=$PATHJAVA_HOME/bin
完成后,执行reboot重启系统。然后打开新终端,执行java -version java javac如能出现相应信息,则说明你已经大功告成了!JDK安装成功!

安装tomcat
tomcat只需要解压出来就可以了,进入tomcat安装文件所在目录,执行:unzip filename
出现解压过程信息,之后会在同一级目录下出现解压出来的tomcat目录,作者解压出来的是tomcat6.0.01因为这个名字太长对于我们以后使用不利,我们执行:mv tomcat6.0.01 tomcat6
将目录名改为tomcat6
接下来你可能已经猜到了,要告诉系统tomcat装到哪了。对!配置环境变量。
执行:cd /etc
还是那个文件vi profile
给里面加一句:export TOMCAT_HOME=/usr/local/tomcat6
好了!现在可以启动tomcat了!
进入tomcat6/bin目录下执行./startup.sh
正常的话会出现
Using CATALINA_BASE:    /usr/local/tomcat6
Using CATALINA_HOME:    /usr/local/tomcat6
Using CATALINA_TMPDIR:    /usr/local/tomcat6/temp
Using JRE_HOME:        /usr/local/jdk1.6.0_01
说明tomcat已经成功启动了!
(注:如果出现提示“权限不够”,可以进入tomcat/bin目录下执行chmod 777* 将所有文件的权限放到最大)在执行./startup.sh
应该好了吧?
此时,打开浏览器,在地址栏输入:http://localhost:8080那只猫是不是在向你微笑呢?!

Linux安装JBOSS跟安装tomcat的方法相似
下载JBOSS的安装文件
解压到/usr/local目录下
在/etc/profile文件里配置环境变量
JBOSS_HOME=/usr/local/jboss4
PATH=$PATHJBOSS_HOME/bin

论坛徽章:
0
4 [报告]
发表于 2010-05-13 19:40 |只看该作者
本帖最后由 liyihongcug 于 2010-05-13 19:42 编辑

不管你用什么系统,jdk和tomcat的安装说明是没有问题的,  
  $CATALINA_HOME是tomcat环境变量设置参数  
  JAVA_HOME=/是java的环境变量参数。  
   
  我查了一下centos的环境变量设置,没有特殊的地方,/etc/profile就可以。   
但每次重启系统都必需重新输入环境变量,如下:
#export JAVA_HOME=/usr/java/j2sdk1.4.2
#export CLASSPATH=$JAVA_HOME/libJAVA_HOME/jre/lib
#export CATALINA_BASE=/opt/jakarta-tomcat-4.1.24
#export CATALINA_HOME=/opt/jakarta-tomcat-4.1.24
#export PATH=$JAVA_HOME/binJAVA_HOME/jre/binPATHHOME/bin
输入后才能启动Tomcat.有什么办法不用重新输入环境变量.
另外还有一个问题,怎样手工写启动文件启动Tomcat

查tomcat的启动参数
set 显示当前shell的变量,包括当前用户的变量
env 显示当前用户的变量
export 显示当前导出成用户变量的shell变量

每个shell有自己特有的变量(set)显示的变量,这个和用户变量是不同的,当前用户变量和你用什么shell无关,不管你用什么shell都在,比如HOME,SHELL等这些变量,但shell自己的变量不同shell是不同的,比如BASH_ARGC, BASH等,这些变量只有set才会显示,是bash特有的,export不加参数的时候,显示哪些变量被导出成了用户变量,因为一个shell自己的变量可以通过export “导出”变成一个用户变量。
结论 用set  

ps   -aux   

一般用.bashrc:  
  3.把设置的环境变量放在/etc/profile后面  
  (profile是一个文件,不是文件夹)  
   
  4.修改.bashr这个文件(我没找到在哪)  
  /etc/profile是系统文件,也就是说,不管哪个用户登录进来,都可以用里面的环境变量  
  ~/.bashrc文件是只对这个用户有效  
  用户登录之后先是读/etc/profile文件,然后再执行你当前这个用户的.bashrc  
  这次你把环境变量放到这些文件里面,再当前的终端source一下,当前终端这些环境变量就有效,你下次这个用户登录时,对所有的终端都有效了


shell变量包括两种变量

1.本shell私有的变量:“通过赋值语句定义好的变量.”

  可以通过如下方法定义shell变量

       A1="1234"

      delcare A2="2345"

2.用户的环境变量:“通过export语法导出的shell私有变量。”

  可以通过如下方法导出shell私有变量为用户环境变量

      A1="1234"

      export A1 #先定义再导出

      export A3="34" #定义的同时进行导出

导出后的用户环境变量可以在所有的shell中看到

env显示用户的环境变量

set 显示当前shell定义的私有变量,包括用户的环境变量,按变量名称排序

export 显示当前导出成用户变量的shell变量,并显示变量的属性(是否只读),按变量名称排序

declare 同set 一样,显示当前shell的定义的变量,包括用户的环境变量
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP