Linux学习-实验楼(1)
1.Shell:命令解释器
2.Linux技能树
3.X11:X窗口系统,其本身只是工具包及架构协议,Xorg是x架构规范的一个实现体,是实现了x协议规范的一个提供图形界面的服务器
4.终端本质上是对应着Linux上的/dev/tty设备,Linux的多用户登陆就是通过不同的/dec/tty设备完成的
5. 查看所属用户组: groups命令
实验4--Linux目录结构及文件基本操作
1.FHS标准:文件系统层次结构标准,它定义了系统中每个区域的用途,所需要的最小构成的文件和目录同事还给出了例外处理与矛盾处理。
2.进入当前登录用户的home路径
cd ~
3.使用touch命令创建空白文件,其主要作用是来更改已有文件的时间戳的
4.标准输入输出:执行一个shell命令行时通常会自动打开三个标准文件,即标准输入文件(stdin),默认对应终端的键盘,标准输出文件(stdout)和标准错误输出文件(stderr),后面两个文件都对应被重定向到终端的屏幕,以便我们能直接看到输出内容。进程姜葱标准输入文件中得到输入数据,将正常输出数据输出到标准输出文件,而将错误信息送到标准错误文件中
实验5-环境变量与文件查找
1.创建:可以用declare创建,也可以使用时直接创建
输出:echo $tmp,变量名只能是英文字母,数字或者下划线,且不能以数字作为开头。
2.变量类型:1)当前shell进程中用户自定义变量,只在当前shell中有效
2)Shell本身内建的变量
3)从自定义变量导出的环境变量
3.相关命令:1)set:显示当前Shell所有变量,包括其内建环境变量,用户自定义变量及导出的环境变量
2)env:显示与当前用户相关的环境变量,还可以让命令在制定环境中运行
3)export:显示从shell中导出成环境变量的变量,也能通过它将自定义变量导出为环境变量..将变量export为环境变量后,在子shell中也可以查看。习惯将环境变量名设为大写
4.按生存周期来换分,Linux变量可以分为两类:
1)永久的:需要修改配置文件,变量永久生效
2)临时的:使用export命令行声明即可,变量在关闭shell时失效
5. 1) /etc/bashrc 和/etc/profile分别存放的是shell变量和环境变量,
2)每个用户目录下有一个.profile隐藏文件,该.profile文件只对当前用户永久生效,而卸载/etc/profile中是对所有用户永久生效,所以想要添加一个永久生效的环境变量,只需要打开/etc/profile,在最后加上你想添加的环境变量就好啦
6. 1)命令的查找路径与顺序:输入一个命令,shell是怎么去查找然后执行的呢?这是通过环境变量PATH来进行搜索的,它保存了shell中执行的命令的搜索路径
2)将自己创建的脚本文件或程序添加为系统命令:PATH=$PATH:/home/shiyanlou/mybin,其中mybin中存放着生成的可执行文件
3)每次启动shell时自动执行添加路径到PATH的命令:在每个用户的home目录中都有一个shell每次启动时会默认执行一个配置脚本,以初始化环境,包括添加一些用户自定义环境变量等。zsh的配置文件是.zshrc,相应Bash的配置文件是.bashrc,它们在etc下还都有一个或多个全局的配置文件,不过我们一般只修改用户目录下的配置文件。
将命令直接添加到.zshrc中:echo "PATH=$PATH:/home/shiyanlou/mybin">>.zshrc,其中>>表示将标准输出以追加的方式重定向到一个文件中(而>是以覆盖的方式重定向到一个文件中)。
7.修改和删除已有变量
1)修改
2)删除:可以使用unset命令删除一个环境变量
3)立刻生效:source命令。当我们在shell中修改了一个配置脚本文件之后,每次都要退出终端重新打开甚至重启主机之后才能生效,此时可以换用source命令来让其立即生效
8.搜索文件
1)whereis 简单快速:这个搜索很快,因为它并没有从硬盘中依次查找,而是直接从数据库中查询,whereis只能搜索二进制文件(-b),man帮助文件(-m)和源代码文件(-s),如果想要获得更全面的搜索结果可以使用locate命令。
2)locate快而全:通过 "/var/lib/mlocate/mlocate.db"数据库查找,不过这个数据库也不是实时更新的,系统会使用定时任务每天自动执行updatedb命令更新一次,所以有时候你刚添加的文件可能会找不到,需要手动执行一次updatedb命令。它可以用来查找指定目录下的不同文件类型,如查找/etc下所有以sh开头的文件。eg:locate /etc/sh.注意:它不只是在/etc目录下查找,还会自动递归子目录进行查找。
eg2:查找/usr/share/ 下所有jpg文件:locate /usr/share/\*.jpg。如果想只统计数目可以加上-c参数,-i参数可以忽略大小写进行查找,whereis的-b\-m\-s同样可以使用
3)which小而精:which本身是shell内建的一个命令,我们通常使用which来确定是否安装了某个指定的软件,因为它只从PATH环境变量指定的路径中去搜索命令
4)find精而细:find应该是几个命令中最强大的了,它不但可以通过文件类型、文件名进行查找而且可以根据文件的属性进行搜索。
Linux学习-实验楼(1)的更多相关文章
- 实验楼 linux 学习
实验楼 linux 学习 一.Linux 用户管理 1.查看用户 who am i // who mom likes whoami ====--------====== 输入的第一列表示打 ...
- Linux学习笔记——重点推荐的Linux网络在线学习资源
首先非常感谢百度,感谢网络的搜索引擎技术,也非常感谢学习资源的贡献者和组织! 1:http://billie66.github.io/TLCL/book/zh/ 2:http://www.ha97. ...
- (干货)Linux学习资源推荐
源地址 国内的专业Linux网站(GB) ChinaUnix Linux中国 实验楼: 免费提供了Linux在线实验环境,不用在自己机子上装系统也可以学习Linux,超方便实用!. 国内的专业Linu ...
- Linux学习(2)- 正则表达式基础
Linux学习(2)- 正则表达式基础 一.基础正则表达式介绍与练习 学习内容 正则表达式特殊符号 [:alnum:]代表英文大小写字母及数字 [:alpha:]代表英文大小写字母 [:blank:] ...
- Linux学习(1)- TCP/IP网络协议基础
Linux学习(1)- TCP/IP网络协议基础 一.TCP/IP 简介 学习内容 TCP/IP(Transmission Control Protocol/Internet Protocol)是传输 ...
- 20155303狄惟佳预备作业三Linux学习笔记
20155303狄惟佳预备作业三Linux学习笔记 初次接触Ubuntu系统以及Linux内核,了解了其产生的历史,从感性来讲,深深吸引我的是其中蕴含的珍贵的开源精神,以及Stallman等人对&qu ...
- Linux学习笔记之一及虚拟机的安装
学习Linux基础入门 学习实验楼Linux基础入门--学习笔记系列博客 第一节 Linux系统简介 Linux就是一个操作系统,操作系统在计算机系统中包括系统调用和内核两层.在简单了解了Linux的 ...
- Linux学习日记-使用EF6 Code First(四)
一.在linux上使用EF 开发环境 VS2013+mono 3.10.0 +EF 6.1.0 先检测一下EF是不是6的 如果不是 请参阅 Linux学习日记-EF6的安装升级(三) 由于我的数据库 ...
- Linux学习之CentOS(二十二)--单用户模式下修改Root用户的密码
在上一篇随笔里面详细讲解了Linux系统的启动过程 (Linux学习之CentOS(二十一)--Linux系统启动详解),我们知道Linux系统的启动级别一共有6种级别,通过 /etc/inittab ...
随机推荐
- Python_生成器generator
生成器:调用时返回一个迭代器 如果一个函数中包含yield语法,那这个函数就会变成一个生成器 例1: def draw_money(draw): #这个函数称为生成器 while draw >0 ...
- 根据关键字找进程id
#!/usr/bin/pythonimport subprocessimport sysimport loggingimport os gameproc = "jd_5.py" d ...
- zprofiler三板斧解决cpu占用率过高问题(转载)
zprofiler三板斧解决cpu占用率过高问题 九居 JVM性能与调试平台 zprofiler 上周五碰到了一个线上机器cpu占用率过高的问题.问题本身比较简单,但是定位过程中动用了多个zp ...
- if-else(职责链)
var a=1,b=2,c=3,d=4; const rules = [ { match: function (a, b, c,d) { return a;}, action: function (a ...
- AtCoder Regular Contest 099 (ARC099) E - Independence 二分图
原文链接https://www.cnblogs.com/zhouzhendong/p/9224878.html 题目传送门 - ARC099 E - Independence 题意 给定一个有 $n$ ...
- AtCoder Regular Contest 080 (ARC080) E - Young Maids 线段树 堆
原文链接http://www.cnblogs.com/zhouzhendong/p/8934377.html 题目传送门 - ARC080 E - Young Maids 题意 给定一个长度为$n$的 ...
- 今天这篇内容分享Apache由http自动跳转到https的多种方法
本文主要和大家分享Apache http自动跳转到https的几种方法,非常不错,具有参考借鉴价值,需要的朋友参考下 本文主要和大家分享Apache http自动跳转到https的几种方法,当你的站点 ...
- mybatis中if test 可以使用== != null '' and or 和括号()
<if test="pd.flag==1 or ((pd.flag==2 or pd.flag==3) and (pd.sfyj==2 or pd.sfyj==3)) or pd.fl ...
- Spark-Unit2-Spark交互式命令行与SparkWordCount
一.Spark交互式命令行 启动脚本:spark-shell 先启动spark:./start-all.sh 本地模式启动命令:/bin/spark-shell 集群模式启动命令:/bin/spark ...
- Scala-Unit4-Scala数组/集合
一.Scala数组 1.数组的定义: 方法一:val arr = new Array[String](3) String代表数据的元素类型.3表示数组的长度 方法二:val arr = Array[I ...