Unix Tutorial Eight
1.UNIX 变量
变量是在运行时将信息从shell传递到程序的一种方式。程序在特定的变量中查找“在环境中”,如果发现它们将使用存储的值。有些是由系统设置的,另一些是由你设置的,还有一些是由shell设置的,或者是任何加载另一个程序的程序。
标准UNIX变量分为两类,环境变量和shell变量。笼统地说,shell变量仅适用于shell的当前实例,并用于设置短期工作条件;环境变量具有更深远的意义,登录时设置的会话在会话期间是有效的。按照惯例,环境变量有UPPER CASE,shell变量有小写的名字。
2. 环境变量
一个环境变量的例子是OSTYPE变量。这个值就是你正在使用的当前操作系统。敲下
% echo $OSTYPE
更多的环境变量的例子是
USER(您的登录名)
HOME(主目录home directory的路径名)
HOST(正在使用的计算机的名称)
ARCH(计算机处理器的体系结构)
显示(显示X窗口的电脑屏幕名称)
打印机(发送打印作业的默认打印机)
PATH(shell应搜索以查找命令的目录)
找出这些变量的当前值
使用setenv命令设置环境变量,使用printenv或env命令显示环境变量,并使用unsetenv命令取消设置。 要显示这些变量的所有值,请键入
%printenv | less
3. Shell变量
一个shell变量的例子是历史变量。这个值是多少个shell命令的保存,允许用户回滚他们以前输入的所有命令。键入
%echo $ history
找出这些变量的当前值。
8.4 Using and setting variables
每次登录UNIX主机时,系统都会在主目录中查找初始化文件。这些文件中的信息用于设置您的工作环境。C和TC shell使用两个名为.login和.cshrc的文件(注意两个文件名都以一个点开头)。
在登录时,C shell首先读取.cshrc,然后是.login
.login是设置将应用于整个会话的条件并执行仅在登录时才相关的操作。
.cshrc用于设置条件并执行特定于shell的操作以及对其的每次调用。
准则是在.login文件中设置ENVIRONMENT变量,在.cshrc文件中设置SHELL变量。
警告:切勿将运行图形显示的命令(例如Web浏览器)放在.cshrc或.login文件中。
8.5 Setting shell variables in the .cshrc file
在.cshrc文件中设置shell变量
例如,要更改保存在历史记录列表中的shell命令的数量,您需要设置shell变量历史记录。它默认设置为100,但是如果你愿意,你可以增加这个。
% set history = 200
通过键入命令检查设置已经生效
echo $history
Unix Tutorial Eight的更多相关文章
- Unix Tutorial Four
4.1 wildcards 通配符 * 通配符,配对1个或以上字符 ?通配符,只配对1个 4.2 Filename conventions 文件名约定 注意: 1. 目录是特殊的文件,故文件名的命名规 ...
- Linux/Unix
Linux/Unix 新手和专家教程 你正在找一些高质量的Linux 和 UNIX 的教程吗?如果是,这篇文章会告诉你到哪去找到这些教程.这里我们将给出超过30个相当的不错的 Linux 和 UNIX ...
- 常用到的简单命令 Sublime Git NPM WindowsCMD MacTerminal(Unix命令)
sublime 选择标签及其内容 ctrl+shift+a连续按两次 Git 撤销 add 重置暂存区的指定文件,与上一次commit保持一致,但工作区不变 git reset [file] 撤销 c ...
- Linux/Unix 新手和专家教程
你正在找一些高质量的Linux 和 UNIX 的教程吗?如果是,这篇文章会告诉你到哪去找到这些教程.这里我们将给出超过30个相当的不错的 Linux 和 UNIX 在线的教程. 需要大家注意的是,他们 ...
- 常用到的简单命令 Sublime Git NPM WindowsCMD MacTerminal(Unix命令) Vim
sublime 选择标签及其内容 ctrl+shift+a连续按两次 调出Package console: Mac: command + shift + p 安装插件: 1.调出 Package co ...
- Linux学习,在线版
考虑加入Linux教派,最初被Linux吸引是看了<Unix编程艺术>,虽然里面的个别非常教条,极端.但是里面大部分的设计思想我还是认同的. 下面是我整理的一些Linux资料,其实我打算折 ...
- Show tree of processes in linux
pstree(1): tree of processes - Linux man pagehttps://linux.die.net/man/1/pstree How to view process ...
- TensorFlow学习路径【转】
作者:黄璞链接:https://www.zhihu.com/question/41667903/answer/109611087来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...
- TensorFlow学习线路
如何高效的学习 TensorFlow 代码? 或者如何掌握TensorFlow,应用到任何领域? 作者:黄璞链接:https://www.zhihu.com/question/41667903/ans ...
随机推荐
- 文件复制的另一种选择,使用FileChannel复制文件
通常来说,FileChannel比普通的缓冲输入输出流有更高的效率 import java.io.File; import java.io.FileInputStream; import ja ...
- phalcon:官方多模块支models层,mode数据库配置(二)
phalcon:官方多模块支models层,mode数据库配置(二) 利用:\pahlcon\mvc\model\Manager::registerNamespaceAlias()方法获取多模块下的m ...
- 关于ios::sync_with_stdio(false);和 cin.tie(0)加速c++输入输出流
原文地址:http://www.hankcs.com/program/cpp/cin-tie-with-sync_with_stdio-acceleration-input-and-output.ht ...
- rabbitmq-交换机
四种交换机: direct fanout topic headers http://www.jianshu.com/p/469f4608ce5d
- leetcode 204. Count Primes(线性筛素数)
Description: Count the number of prime numbers less than a non-negative number, n. 题解:就是线性筛素数的模板题. c ...
- redisCheckMem脚本
最近维护的redis cluster需要扫描每个实例的内存使用率,首先我们需要获取实例已经使用的内存,获取实例的最大内存配额,两个值相比就能获取到内存使用比例. 实例的最大内存获取方法: $REDIS ...
- LeetCode 510. Inorder Successor in BST II
原题链接在这里:https://leetcode.com/problems/inorder-successor-in-bst-ii/ 题目: Given a binary search tree an ...
- uoj problem 12 猜数
题目大意 每次询问给出g,l,有\(a*b = g*l = n\),且\(a,b\)均为\(g\)的倍数.求\(a+b\)的最小值和\(a-b\)的最大值. 题解 因为\(a,b\)均为\(g\)的倍 ...
- 【LeetCode】085. Maximal Rectangle
题目: Given a 2D binary matrix filled with 0's and 1's, find the largest rectangle containing only 1's ...
- C/C++面试题总结(2)
C++部分: 1.static(静态)变量有什么作用? 2.virtual关键字用法 3.const有哪些作用 或<王道程序员求职宝典>P95 4.new/delete与malloc/fr ...