Linux基础入门-环境变量与文件查找
一、环境变量:
Shell中的变量也有不同的数据类型,不用专门指定类型名,可以参与运算,有作用域限制。
declare tmp 创建一个变量
可以不用专门声明,可以即用即创建
tmp=shiyanlou 变量赋值
echo $tmp 读取变量的值
Notes: 变量名不能用数字开头,且只能是英文字母,数字,下划线
Shell的环境变量作用于自身及它的子进程,环境变量可以继承。

通常有以下三种环境变量:
- 当前Shell进程私有用户自定义变量,如tmp
- Shell本身内建的变量
- 从自定义变量导出的环境变量
与环境变量相关的命令:
set 显示当前Shell所有环境变量,包括内建环境变量,用户自定义变量和导出的环境变量
env 显示与当前用户相关的环境变量,还可以让命令在指定环境中运行
export 显示从Shell中导出的环境变量,也能通过它将自定义变量导出为环境变量

用vimdiff可以比较这几个命令输出文件的不同,如截图所示
zsh创建子Shell, 实验楼用的是zsh,Ubuntu用的是Bash
然后输入值为空,表示变量无效
export导出temp为环境变量,然后创建子进程,有效
添加环境变量示例:
PATH = $PATH:/home/shiyanlou/mybin
这里一定要使用绝对路径
为了让该环境变量每次启动Shell时自动执行添加路径到PATH,需要把它写入到配置文件中,zsh的配置文件为.zshrc,Bash的配置文件为.bashrc,在etc下还都有一个或多个全局的配置文件,不过我们一般只修改用户目录下的。
echo "PATH=$PATH:/home/shiyanlou/mybin" >> .zshrc
>是以覆盖的方式重定向到一个文件中,>>是追加标准输出到文件中。
变量修改的方式:
${变量名#匹配字符串} 从前向后匹配,删除符合的最短数据
${变量名##匹配字符串} 从前向后匹配,删除符合的最长数据
${变量名%匹配字符串} 从后向前匹配,删除符合的最短数据
${变量名%%匹配字符串} 从后向前匹配,删除符合的最长数据
${变量名/旧的字串/新的字串} 将符合旧字串的第一个字串替换为新的字串
${变量名//旧的字串/新的字串} 将符合旧字串的全部字串替换为新的字串
用unset删除变量
让环境变量立即生效,可以用source命令,
source .zshrc
也可以用它的别名.,需要指定完整的绝对或者相对路径名
. ./.zshrc
二、搜索文件:
whereis直接从数据库中查找,快速,搜索-b, -m, -s文件
locate通过/var/lib/mlocate/mlocate.db数据库查询,这个数据库每天自动update一次,快而全
$ locate /usr/share/*.jpg
\转义,只统计数目可以加上-c参数,-i可以忽略大小写查找
which是Shell内建的命令,常用于确定是否安装了某个指定的软件,因为它只从PATH环境变量指定的路径去搜寻
find最为强大,不仅可以通过文件类型,文件名查找,而且可以根据文件的属性(如时间戳,文件权限等)查找。基本格式如下:
find [path] [option] [action]
与时间有关的参数:
-atime 最后访问的时间
-ctime 创建时间
-mtime 最后修改时间
作业提要:
用cmatrix实现《黑客帝国》中的代码数字雨
F11全屏显示
本文原载于实验楼
Linux基础入门-环境变量与文件查找的更多相关文章
- (大数据工程师学习路径)第一步 Linux 基础入门----环境变量与文件查找
环境变量与文件查找 本节介绍环境变量的作用与用法,及几种搜索文件的方法.学会这些技巧高效地使用 Linux. 一.环境变量 1.变量 要解释环境变量,得先明白变量是什么,准确的说应该是 Shell 变 ...
- 环境变量和文件查找&文件打包与解压缩
环境变量和文件查找 介绍环境变量的作用与用法 及几种搜索文件的方法 学会这些技巧可以高效地使用 Linux 知识点:环境变量的设置 环境变量的修改 环境变量 要解释环境变量,得先明白变量是什么,准确的 ...
- linux的环境变量与文件查找
1. 环境变量 1.1 变量 shell 中的变量有不同类型,可参与运算,有作用域限定 变量的作用域即变量的有效范围(比如一个函数中.一个源文件中或者全局范围),在该范围内只能有一个同名变量.一旦离开 ...
- Linux 基础教程 25-命令和文件查找
which 不管是在Windows还是Linux系统中,我们都会偶尔执行一些系统命令,比如Windows常见的cmd.ping.ipconfig等,它们的位置都在%systemdrive%中. ...
- Linux环境变量与文件查找
作业: 找出/etc目录下所有以.list结尾的文件 代码:locate /etc/\*.list sudo find /etc/ -name \*.list
- linux学习-环境变量与文件查找
- (大数据工程师学习路径)第一步 Linux 基础入门----目录结构及文件基本操作
Linux 目录结构及文件基本操作 介绍 1.Linux 的文件组织目录结构. 2.相对路径和绝对路径. 3.对文件的移动.复制.重命名.编辑等操作. 一.Linux 目录结构 在讲 Linux 目录 ...
- Linux基础入门-目录结构及文件基本操作
一.Linux的目录结构: Windows是以存储介质为主的,主要以盘符及分区来实现文件的管理,然后之下才是目录.但Linux的磁盘从逻辑上来说是挂载在目录上的,每个目录不仅能使用本地磁盘分区的文件系 ...
- Linux基础入门
第一节,linux系统简介 一.实验内容 了解 Linux 的历史,Linux 与 Windows 的区别等入门知识. 二.实验要求 阅读linux简介与历史 三.实验步骤 (一).Linux 为何物 ...
随机推荐
- 区间dp之四边形不等式优化详解及证明
看了那么久的四边形不等式优化的原理,今天终于要写一篇关于它的证明了. 在平时的做题中,我们会遇到这样的区间dp问题 它的状态转移方程形式一般为dp[i][j]=min(dp[i][k]+dp[k+1] ...
- Matlab小波工具箱的使用2
Matlab小波工具箱的使用2 (2011-11-11 09:32:57) 转载▼ http://blog.sina.com.cn/s/blog_6163bdeb0102dw7a.html#cmt_5 ...
- js判断字段是否为空 isNull
js判断字段是否为空 isNull //在js中if条件为null/undefined/0/NaN/""表达式时,统统被解释为false,此外均为true .//为空判断函数f ...
- 使用RevoUninstaller Pro卸载
使用RevoUninstaller Pro卸载opera浏览器,操作过的注册表 HKEY_CURRENT_USER\SOFTWARE\CLASSES\Local Settings\Mircrosoft ...
- python学习笔记 18-4-11
一.执行一个简单的代码 1.先创建目录 mkdir /home/dev 2.切换到目录 cd /home/dev 3.在目录下创建文件夹 vim hello.py 4.编辑文件内容 vim hello ...
- python基础—列表的使用[]
names = ['zhangyang','guyun','xiangpeng','xuliangchen']print(names[0])print(names[1:3])#切片print(name ...
- 在Java中用 . 深层访问JSON数据
本文介绍Java中解析JSON的一种方法,可以让我们在Java程序中也用x.x.x的形式访问JSON数据中的值. 代码大部分来源非本人,本人在源代码基础上加以修改以使正常运行. 代码: // 将提取方 ...
- 看到Console.WriteLine($"string")写法,一时间不理解$的用途
参了网上资料,原来它是C# 6.0的语法糖. C# 6.0 新加上的功能: Null-Conditional Operator 大概就是,简洁代码量,缩短一些关于为null的判断~ 旧写法: pu ...
- mysql navcate longblob 查询结果导出倒入
由于之前项目为了查询方便,且不受权限控制.所以把image储存在了数据库.但是也遇到了很多瓶颈问题. 1,丢图从日志上查询获知,丢图95%以上是由于mysql的timeout时间失效引起的.(由于另一 ...
- WEB学习笔记6-正确闭合HTML标签
自闭合标签(空元素,即不能包含任何内容,这些元素对应的HTML标签成为自闭合标签) area/base/br/col/command/embed/hr/img/input/keygen/link/me ...