您的位置:首页 > 其它

环境变量与文件查找

2016-07-13 14:04 288 查看
-----------------------------------------------------------------Sun-------------------------------------------------------------------1.环境变量 ①变量         何为变量?       变量就是计算机中用于记录一个值/字符/字符串 的符号。         变量名              英文字母数字下划线,不能以数字开头!         变量的作用域    一个函数中,源文件中,全局范围中,在这些范围中只允许有一个同名变量。       用 declare 创建一个 tmp 变量,然后赋值。             也可以不用 declare 声明变量。直接创建也可。            echo $tmp 读取 tmp 变量的值②环境变量前 Shell 进程私有用户自定义变量,如上面我们创建的 temp 变量,只在当前 Shell 中有效。Shell 本身内建的变量。从自定义变量导出的环境变量。     也有三个与上述三种环境变量相关的命令,
set
env
export。区别在于是不同范围的环境变量。
 
命令说明
set
显示当前 Shell 所有环境变量,包括其内建环境变量(与 Shell 外观等相关),用户自定义变量及导出的环境变量
env
显示与当前用户相关的环境变量,还可以让命令在指定环境中运行
export
显示从 Shell 中导出成环境变量的变量,也能通过它将自定义变量导出为环境变量
 分别通过管道 用 sort 排序,重定向到 txt 文件中。 再用 vimdiff 比较文件内容 可以简单理解成 环境变量在当前子进程有效。 例: 用 export 将Shell 中的变量导出为环境变量,此时子Shell 中可查看到变量的值。  ③ 命令的查找路径与顺序     Shell 中输入一个命令是通过环境变量 PATH 来进行搜索的。即就是 PATH 中保存了Shell中执行命令的搜索路径。      echo $PATH  查看PATH内容       这一类目录下放的都是可执行文件,当我们在 Shell 中执行一个命令时,系统就会按照 PATH 中设定的路径按照顺序依次到目录中去查找,如果存在同名的命令,则执行先找到的那个。④ 修改和删除已有变量变量的修改有以下几种方式:
变量设置方式说明
${变量名#匹配字串}
从头向后开始匹配,删除符合匹配字串的最短数据
${变量名##匹配字串}
从头向后开始匹配,删除符合匹配字串的最长数据
${变量名%匹配字串}
从尾向前开始匹配,删除符合匹配字串的最短数据
${变量名%%匹配字串}
从尾向前开始匹配,删除符合匹配字串的最长数据
${变量名/旧的字串/新的字串}
将符合旧字串的第一个字串替换为新的字串
${变量名//旧的字串/新的字串}
将符合旧字串的全部字串替换为新的字串
unset 变量名   删除一个环境变量2.搜索文件
whereis简单快速,直接在数据库中查找
 
whereis
只能搜索二进制文件(-b),man帮助文件(-m)和源代码文件(-s)。如果想要获得更全面的搜索结果可以使用[code]locate
命令。[/code]
which 小而精
which
本身是 Shell 内建的一个命令,我们通常使用
which
来确定是否安装了某个指定的软件,因为它只从
PATH
环境变量指定的路[/code]
径中去搜索命令。
find精而细
不但可以通过文件类型、文件名进行查找而且可以根据文件的属性(如文件的时间戳,文件的权限等)进行搜索
find [path] [option] [action]
与时间相关的命令参数:
参数说明
-atime
最后访问时间
-ctime
创建时间
-mtime
最后修改时间
下面以
-mtime
参数举例:
-mtime n
: n 为数字,表示为在n天之前的”一天之内“修改过的文件
-mtime +n
: 列出在n天之前(不包含n天本身)被修改过的文件
-mtime -n
: 列出在n天之前(包含n天本身)被修改过的文件
newer file
: file为一个已存在的文件,列出比file还要新的文件名
locate 快而全
通过"/var/lib/mlocate/mlocate.db"数据库查找,不过这个数据库也不是实时更新的,系统会使用定时任务每天自动执行
updatedb
命令更新一次,所以有时候你刚添加的文件,它可能会找不到,需要手动执行一次
updatedb
命令(在我们的环境中必须先执行一次该
命令)。它可以用来查找指定目录下的不同文件类型!
 
                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: