mac如何设置环境变量永久设置为tcsh环境

他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
丰衣足食, 积分 567, 距离下一级还需 433 积分
论坛徽章:0
有一个问题一直困扰着我,一直没有解决,就是设置环境变量的问题。我的shell是csh,我的当前用户目录下有下列设置环境变量的文件(我觉得是): .cshrc, local.cshrc, .profile, local.profile,local.login 请问我应该选择那一个设置环境变量呢?在csh下怎样设置永久的PATH,永久的MANPATH, 永久的NETCDFHOME,永久的GMTHOME?
稍有积蓄, 积分 223, 距离下一级还需 277 积分
论坛徽章:2
.cshrc里设置就可以啦,
丰衣足食, 积分 567, 距离下一级还需 433 积分
论坛徽章:0
回复 #2 唐三葬 的帖子
非常感谢二楼的回复。是不是下面这样的:
# @(#)cshrc 1.11 89/11/29 SMI
set path=(/bin /usr/bin /usr/ccs/bin /opt/SUNWspro/bin /etc .)
if ( $?prompt ) then
& & & & set history=32
setenv NETCDFHOME /usr/local/gmt/netcdf-3.6.1
setenv GMTHOME /usr/local/gmt
set path=(/usr/local/gmt/bin $path)
set manpath=(/usr/local/gmt/man/manl)
白手起家, 积分 165, 距离下一级还需 35 积分
论坛徽章:0
回LZ,是的。
白手起家, 积分 79, 距离下一级还需 121 积分
论坛徽章:0
回复 #4 ulysses_leo_lee 的帖子
呵呵,前几天花了一晚上的时间问题终于解决了。不过manpath的设置让我有点迷惑。为什么
set path=(/usr/local/gmt/bin $path),能成功设置path,而
set manpath=(/usr/local/gmt/man/manl&&$manpath),没有成功设置manpath呢?奇怪的很!最后我 setenv MANPATH /usr/local/gmt/man/manl&&成功呢!看来manpath和path看起来有点象,其实是不一样!
稍有积蓄, 积分 331, 距离下一级还需 169 积分
论坛徽章:0
回复 #1 wenhuiwen 的帖子
At the end of GMT installation (suppose you use install_gmt script), there will be instructions for set environment variables for csh and bash.
白手起家, 积分 79, 距离下一级还需 121 积分
论坛徽章:0
回复 #6 enod 的帖子
对阿。我现在想起来了。gmt安装结束,提示如下:
-----------------------------------------------------------------------
For csh or tcsh users:
setenv NETCDFHOME /usr/local/gmt/netcdf-3.6.1
setenv GMTHOME /usr/local/gmt/
set path=(/usr/local/gmt/bin $path)
For sh or bash users:
export NETCDFHOME=/usr/local/gmt/netcdf-3.6.1
export GMTHOME=/usr/local/gmt
export PATH=/usr/local/gmt/binPATH
For all users:
Add /gmt/man to MANPATH
Add /gmt/www/gmt/gmt_services.html as browser bookmark
现在设置好了。不过 MANPATH只设置在一个用户而不是所有的用户。怎样才能设置在所有的用户呢?
-----------------------------------------------------------------------温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(3058)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_095075',
blogTitle:'bash csh/tcsh 环境变量的设置',
blogAbstract:'用户shell配置文件$HOME/.profile (Bourne shell, sh, bash)$HOME/.cshrc (csh, tcsh)$HOME/.tcshrc (tcsh)/etc/passwd文件中列出每个用户的shell/etc/csh.cshrc/etc/csh.login/etc/profile (Bourne shell, bash)/etc/login (Bourne shell, bash)bash / sh等 \r\n(一).bshrcJAVA_HOME=/usr/java/jdkCLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar:\\$JAVA_HOME/lib/dt.jarPATH=$PATH:$JAVA_HOME/bin:/usr/local/apache/bin',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:0,
publishTime:7,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}后使用快捷导航没有帐号?
只需一步, 快速开始
只需一步,快速开始
查看: 4185|回复: 11
求助 icc 和 ifort 的环境变量怎么设置
在线时间 小时
登录后查看更多精彩内容~
才可以下载或查看,没有帐号?
我是远程操作服务器安装wrf&&服务器自带的是&&icc 10.1& & 安装目录如图&&
在 /opt/intel/& &下面有 cc 和fc&&两个文件夹
谢谢各位大神了!
已有1人关注本帖
密码修改失败请联系qq:
在线时间 小时
密码修改失败请联系qq:
在线时间 小时
论坛里有和环境变量设置相关的帖子,自己去看看琢磨去。
密码修改失败请联系qq:
在线时间 小时
论坛里有和环境变量设置相关的帖子,自己去看看琢磨去。
&&我没找着比较靠谱的& &&&所以选择自己往上面装一个 PGI&&
密码修改失败请联系qq:
在线时间 小时
本帖最后由 bjj948 于
21:28 编辑
$ source /opt/intel/bin/compilervars.sh
$ source /opt/intel/bin/ifortvars.sh
$ source /opt/intel/bin/iccvars.sh
$ source /opt/intel/bin/compilervars.csh
$ source /opt/intel/bin/ifortvars.csh
$ source /opt/intel/bin/iccvars.csh
密码修改失败请联系qq:
在线时间 小时
export INTEL_LICENSE_FILE=/opt/intel/license
密码修改失败请联系qq:
在线时间 小时
$ source /opt/intel/bin/compilervars.sh
这些都设置了
source /opt/intel/cc/10.1.026/bin/iccvars.sh intel64
source /opt/intel/fc/10.1.026/bin/ifortvars.sh intel64
export INTEL_LICENSE_FILE=/opt/intel/licenses
export CC=icc
export CXX=icpc
export CFLAGS='-O2'
export CXXFLAGS='-O2'
export F77=ifort
export FC=ifort
export F90=ifort
export FFLAGS='-O2'
export CPP='icc -E'
但还是会提示错误
/usr/include/g++/iostream(44): catastrophic error: could not open source file &bits/c++config.h&
&&#include &bits/c++config.h&
因为我是远程操作& & 没有根权限&&面对这个问题&&我很无奈&&
密码修改失败请联系qq:
在线时间 小时
export INTEL_LICENSE_FILE=/opt/intel/license
对了& & CFLAGS&&后面的参数有什么意义啊& &怎么设置?&&我把这三个删掉也会出错&&忘记错误是什么了
密码修改失败请联系qq:
在线时间 小时
这些都设置了
source /opt/intel/cc/10.1.026/bin/iccvars.sh intel64
source /opt/intel/fc/10.1.026 ...
这个程序不通用吧。
bits/c++config.h,看起来怪怪的。
密码修改失败请联系qq:
在线时间 小时
这个程序不通用吧。
bits/c++config.h,看起来怪怪的。
/usr/include/g++/ia64-suse-linux/bits/c++config.h
/usr/local/gcc-4.7/include/c++/4.7.0/x86_64-unknown-linux-gnu/32/bits/c++config.h
/usr/local/gcc-4.7/include/c++/4.7.0/x86_64-unknown-linux-gnu/bits/c++config.h
/usr/local/gcc-4.6.2/include/c++/4.6.2/ia64-unknown-linux-gnu/bits/c++config.h
里面有四个这个文件& &我也很纳闷& &默认是调用的第一个& &
我现在直接不设置变量&&用自带gcc 和gfortran& &在用wrf的时候& &会不会有什么问题啊 ?
密码修改失败请联系qq:tcsh shell 变量
tcsh 是原来的 Berkeley UNIX C shell 的改进版本,它是最流行的 UNIX shell 之一。本文讨论 tcsh 提供的一些功能:它提供的 shell 变量可以减少几个常规任务花费的时间,还提供了一些高级的安全特性,比如监视用户及其命令历史。本文描述的所有命令和脚本都用 tcsh 6.15 测试过(参见 )。如何设置 shell 变量tcsh 提供几个内置的 shell 变量。其中一部分(比如 rmstar 和 noclobber)是布尔值,所以建议用 set &variablename&
打开它们。对于 prompt 等其他内置变量,需要使用 set &variablename&=&value& 提供一个值。使用 unset &variablename& 取消变量。清单 1 给出一些基本示例。清单 1. 如何设置/取消 shell 内置变量tcsh# set prompt="arpan@tintin# "
arpan@tintin# set autologout=1
arpan@tintin# unset prompt
echo $autologout
&prompt has disappeared due to unset operation&下面几节讨论 tcsh 通过 shell 内置变量提供的一些最有用的特性。 用 rmstar 预防灾难在 UNIX 中,造成混乱的最常见原因可能是意外地执行了 rm *。大多数用户在使用 rm 命令时不使用 -i 选项,因此会立即删除文件。tcsh 定义了一个 shell 变量 rmstar;如果打开这个变量,在用户执行操作时会显示提示,要求用户确认操作。但是,如果用户在命令提示下运行 rm –f *,就不会出现确认提示。清单 2 演示 rmstar 的用法。清单 2. 使用 rmstar shell 变量arpan@tintin# pwd
/home/arpan/scratchpad
arpan@tintin# ls
file1 file2
arpan@tintin# set rmstar
arpan@tintin# rm *
Do you really want to delete all files? [n/y] n
arpan@tintin# ls
file1 file2
arpan@tintin# unset rmstar
arpan@tintin# rm *
arpan@tintin# ls
arpan@tintin#防止意外覆盖现有的文件造成混乱的另一个典型场景是意外地覆盖现有的文件。为了防止发生这种情况,应该一直打开 shell 变量 noclobber。(这个变量在 csh shell 中也可用)。注意,这只能防止把输出重定向到现有文件;如果使用 cp 或 mv 覆盖文件,这个变量没有任何帮助。见清单 3。 清单 3. 使用 noclobber 防止意外覆盖文件arpan@tintin# ls
file1 file2
arpan@tintin# set noclobber
arpan@tintin# echo testing & file1
file1: File exists.
arpan@tintin# unset noclobber
arpan@tintin# echo testing & file1
arpan@tintin# cat file1
testing还要注意,shell 操作符 && 和 &! 不考虑 noclobber 的设置。前一个操作符在现有文件中追加内容(所以仍然可以恢复数据),后者覆盖现有内容。 自动 Tab 补齐当在 shell 提示上输入命令时,可以只输入命令字符串的一部分,然后按 Tab,shell 会自动补齐命令字符串或者给出可用的选择,这会显著加快输入速度。这个功能对于长文件名尤其有意义;可以只输入前几个字母并让 shell 补齐文件名。为了启用这个特性,需要设置 shell 变量 autolist。清单 4 给出一个示例。 清单 4. 使用 autolist 启用自动命令补齐arpan@tintin# ls
this_is_a_big_file test.c threads.h
arpan@tintin# set autolist
arpan@tintin# vi t[TAB]
this_is_a_big_file test.c term.h
arpan@tintin# vi th[TAB]
this_is_a_big_file threads.h在这个示例中,[TAB] 表示按 Tab 键。在 shell 提示上输入 vi thi[TAB],shell 会把 thi[TAB] 扩展为 this_is_a_big_file。使用 addsuffix 在 Tab 补齐期间区分目录如果同时设置 addsuffix shell 变量和自动 Tab 补齐,那么在找到匹配时 tcsh 会在文件夹后面加上一个 / 字符,这样就更容易区分出文件夹。它在一般文件后面加一个空格。在清单 5 所示的情况中,有一个名为 documents 的文件夹,这个文件夹中有一个名为 deliverables 的文件;用户输入 do[TAB],shell 就会显示 documents/。如果取消 addsuffix 变量,tcsh 就只显示 documents,这对于判断 documents 是一般文件还是文件夹很不方便。清单 5. 在使用 autolist 的同时使用 addsuffix 区分文件夹arpan@tintin# ls
documents deliverables
arpan@tintin# set autolist
arpan@tintin# ls do[TAB]
arpan@tintin# ls documents
arpan@tintin# set addsuffix
arpan@tintin# ls do[TAB]
arpan@tintin# ls documents/
arpan@tintin# unset autosuffix
arpan@tintin# ls do[TAB]
arpan@tintin# ls documents使用 fignore shell 变量避免意外删除在某些情况下,限制自动 Tab 补齐特性是有意义的。例如,如果 vi 是一个会话中最常用的命令,那么把 Tab 补齐提供的命令字符串限制在文本文件范围内可以节省时间。同样,如果 .c 和 .cpp 文件还未备份,希望避免意外删除它们,那么在 Tab 补齐期间最好不要出现具有 .c/.cpp 扩展名的文件,这样在 rm 命令后面使用 Tab 补齐特性时就不会删除它们。为了避免在 Tab 补齐期间显示 C/C++ 文件,使用 set fignore=(.c .cpp .h)。见清单 6。 清单 6. 使用 fignore 避免在 Tab 补齐期间显示源代码文件arpan@tintin# set autolist
arpan@tintin# ls
memory.h memory.cpp kernel.c memory.o kernel.o
arpan@tintin# rm m[TAB]
memory.h memory.cpp memory.o
arpan@tintin# set fignore=(.c .cpp .h)
arpan@tintin# rm m[TAB]
memory.o注意,如果在 rm 后面按 Tab 键(而不是在 m 后面按 Tab 键),那么所有 C/C++ 源代码文件都会出现。 在没有用户活动时自动注销数据安全是所有组织都很关心的问题。如果意外地让一个 shell 终端一直打开着,就可能提供访问重要文件的机会,这种情况随时都会发生。可以用 tcsh autologout 变量解决这个问题。如果在指定的时间(以分钟为单位)内没有用户活动,用户就从系统中注销,返回到 tcsh(如果 tcsh 是登录 shell)。如果 tcsh 不是登录 shell,用户就退出到以前的 shell(这对安全帮助不大)。因此,在安全环境中选择 tcsh 作为登录 shell 是有意义的。清单 7 给出一个由于没有用户活动导致自动注销的示例。 清单 7. 由于没有用户活动导致自动注销arpan@tintin# rsh herge
arpan@herge# set autologout=1
arpan@herge# date
Sat Jun 28 18:13:07 IST 2008
&After 1 min of inactivity&
arpan@herge# auto-logout
Connection to herge closed.
arpan@tintin# date
Sat Jun 28 18:14:10 IST 2008改进 tcsh 的安全性:监视正在使用系统的每个用户必须一直监视用户对受保护系统的访问。tcsh 提供了内置 shell 变量 watch,可以通过它查看正在使用系统的用户。语法是 set watch=(username1 ttyname1 username2 ttyname2 …)。这会监视用户 username1 是否在终端 ttyname1 上登录了。可以用特殊语法 set watch=(any any) 监视所有系统终端上的所有用户。 在默认情况下,watch 每 10 分钟检查一次系统中的登录/注销活动。可以通过 watch 语法中的第一个参数指定活动检查之间的时间间隔,例如:set watch=(5 any any)。见清单 8。清单 8. 使用 watch 检查登录/注销活动arpan@tintin# set watch=(5 any any)
&checks for login/logout activity across system every 5 minutes)
arpan@tintin# set watch=(b* any)
&check the login/logout activities of all users whose name starts with b across
any terminal in the network&tcsh 还提供内置命令 log,这个命令列出受 watch 变量影响的终端以及正在使用它们的用户(见清单 9)。注意,如果在没有设置 watch 的情况下使用 log,就会导致一个错误。 清单 9. 使用 log 检查 watch 所影响的终端的使用情况arpan@tintin# log
arpan has logged on pts/0 from 132.132.6.73
root has logged on console
zanies has logged pts/5 from 132.132.2.1使用 prompt 变量跟踪当前的工作目录tcsh 定义了 prompt 内置 shell 变量,可以通过这个变量定制 shell 提示。最常见的 UNIX 任务之一是跟踪当前所在的文件夹和机器。不需要一直使用 pwd 和 hostname,只需通过设置 prompt 变量让 shell 提示反映当前的工作目录和主机名,即可实现相同的效果。见清单 10。清单 10. 通过修改 prompt 变量让 shell 提示反映当前的工作目录和主机tcsh-6.15$ pwd
/home/arpan/ibm1
tcsh-6.15$ hostname
tcsh-6.15$ echo $user
tcsh-6.15$ set prompt="$user@`hostname`[$cwd] "
arpan@tintin[/home/arpan/ibm1]但是,这种方式有一个问题:如果切换到另一个文件夹,提示并不会反映这一变化。为了随着切换文件夹连续改变提示,应该使用特殊别名 cmdcwd。如果已设置这个别名,那么在切换到新文件夹之后 tcsh 会执行 cmdcwd 映射到的命令。为了在提示中反映修改后的文件夹,cmdcwd 必须映射到 set prompt 命令(见清单 11)。清单 11. 使用 cmdcwd 别名在提示中反映修改后的文件夹tcsh-6.15$ alias cmdcwd 'set prompt="$user@`hostname`[$cwd] " '
tcsh-6.15$ cd
arpan@tintin[/home/arpan/ibm1] cd net
arpan@tintin[/home/arpan/ibm1/net]注意,这个方案不但能够反映 cd 命令所做的文件夹切换,对于 pushd 和 popd 命令也是有效的。如果使用 X-Windows,另一个跟踪当前文件夹的好方法是,在跨多个文件夹工作时,在 xterm 标题栏上显示文件夹名。 例如,可以使用 echo 命令在 xterm 标题栏上显示一些基本信息。在 shell 提示上输入 echo
"[Ctrl-v][Esc]]2; Hello [Ctrl-v][Ctrl-g]"。注意,[Ctrl-v] 表示按组合键 Ctrl-V。输入这个命令序列,就会在 shell 提示上显示以下内容:echo "^[]2; Hello ^G"。执行这个命令之后,xterm 标题栏显示 Hello。清单 12 演示如何在 xterm 标题栏和提示中同时显示当前文件夹名。 清单 12. 使用 cmdcwd 修改提示并设置 xterm 标题栏arpan@tintin[/home/arpan1/ibm1]# alias cwdcmd 'set prompt="$user@`hostname`[$cwd]# ";
echo "^[]2;$cwd^G" '自动纠正无效的命令用法tcsh 提供内置变量 correct,这有助于纠正无效的命令用法。例如,如果希望调用 perl,但是输入的是 prl,tcsh 会提示您纠正它。清单 13 给出一个示例。 清单 13. tcsh 自动纠正输入arpan@tintin# set correct=cmd
arpan@tintin# prl
CORRECT&perl (y|n|e|a)? y
arpan@tintin# figner
CORRECT&finger (y|n|e|a)? y
..定期执行特定的命令系统管理员最常见的任务之一是监视磁盘使用量,并在磁盘使用量接近 100% 时采取措施。tcsh 的一个出色特性使我们能够轻松地定期执行特定的命令。把 periodic 映射到要定期执行的任务,并把 shell 内置变量 tperiod 设置为执行任务的时间间隔(以分钟为单位)。清单 14 演示如何使用 tperiod 和 periodic。注意,periodic 映射到脚本 checkdiskusage,这个脚本检查磁盘使用量,tcsh 每 10 分钟运行它一次。清单 14. 使用 tcsh 内置变量定期执行命令arpan@tintin# set tperiod=10
arpan@tintin# alias periodic checkdiskusage
arpan@tintin# cat checkdiskusage
df -k | awk -F" " '{print $5}' | grep "9[0-9]*"
if ($status && 0) then
mail –s "disk quota exceeded 90%"
exit $status针对每个终端分别设置历史文件同一位 UNIX 系统用户常常从多个终端登录。为了针对每个终端分别维护命令执行历史,可以使用 histfile 和 savehist 环境变量。histfile 变量用来指定存储命令执行历史的文件;默认设置是 $HOME/.history。savehist 变量让 tcsh 存储用户在 shell 提示上输入的最后 N 个命令。清单 15 中定义的 histfile 变量指定多个历史文件,这样就可以监视多个终端。清单 15. 使用 histfile 和 savehist 变量存储用户的命令历史arpan@tintin# tty
/dev/pts/0
arpan@tintin# set savehist=25
arpan@tintin# set histfile=~/.history_`tty | sed –e 's/\//_/g' `
arpan@tintin# echo $histfile
~/.history_dev_pts_0监视运行一个命令花费的时间为了监视执行一个 UNIX 进程花费的时间,可以设置 time 变量。输出显示用户时间、内核时间和实际流逝时间。 给出一个示例。 注意,可以用 tcsh 的内置命令 time 产生相同的输出,但是要对脚本做大量修改 —— 每个命令必须加上前缀 time(例如,time du –sm /opt)。如果使用 time 变量,那么只需在脚本的开头加上一行 set time,就可以显示各个命令的执行时间。 清单 16. 使用 time 显示各个命令的执行时间arpan@tintin# cat script
du –sm /opt
df –k /lib
arpan@tintin# tcsh –f ./script
0.628u 0.008s 0:02.00 0.0%
0+0k 0+0io 0pf+0w
Filesystem
Used Available Use% Mounted on
0.000u 0.004s 0:00.02 0.0%
0+0k 0+0io 0pf+0w调试 shell 脚本:在发生错误时自动输出退出值shell 变量 printexitvalue 是一个很有用的 tcsh 特性,它对脚本调试非常有帮助。在通常情况下,shell 脚本和 UNIX 程序在成功完成时返回零。如果设置这个变量,那么当脚本或程序返回非零值时 tcsh 会显示退出状态,这会指出潜在的错误。见清单 17。 清单 17. 使用 printexitvalue 帮助调试arpan@tintin# set printexitvalue
arpan@tintin# ls /tmp/opt
ls: /tmp/opt: No such file or directory
arpan@tintin# cat error_script
ls –l; return 2
arpan@tintin# ./error_script
./error_script: line 1: return: can only `return' from a function or sourced script
arpan@tintin#
ls /tmp/opt
ls: /tmp/opt: No such file or directory注意,在这个变量与一个 shell 脚本结合使用时,显示的是脚本的非零返回值,而不是脚本内部使用的命令或用户程序的返回值。 结束语除了支持 csh 提供的 shell 变量之外,tcsh 还提供了大量 shell 变量和别名。本文主要介绍 tcsh 特有的变量。这里只讨论了一部分变量;更详细的信息参见 。
相关主题您可以参阅本文在 developerWorks 全球站点上的
。获得最新的 tcsh 。访问 。阅读 。:developerWorks 的“AIX and UNIX 专区”提供了大量与 AIX 系统管理的所有方面相关的信息,您可以利用它们来扩展自己的 UNIX 技能。:访问“AIX and UNIX 新手入门”页面可了解更多关于 AIX 和 UNIX 的内容。:AIX and UNIX 专区已经为您推出了很多的技术专题,为您总结了很多热门的知识点。我们在后面还会继续推出很多相关的热门专题给您,为了方便您的访问,我们在这里为您把本专区的所有专题进行汇总,让您更方便的找到您需要的内容。
添加或订阅评论,请先或。
有新评论时提醒我
static.content.url=http://www.ibm.com/developerworks/js/artrating/SITE_ID=10Zone=AIX and UNIX, LinuxArticleID=349503ArticleTitle=tcsh shell 变量publish-date=}

我要回帖

更多关于 mac 设置永久环境变量 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信