- 命令解析器
- Linux快捷键
- Linux系统目录结构
- 用户目录
- 文件和目录操作
- 文件和目录属性
- 文件权限和用户、用户组
- 文件的查找和检索
- 软件的安装和卸载
- U盘的挂载和卸载
shell -- unixc操作系统 bash -- Linux操作系统 本质:根据命令的名字调用对应的执行程序2.Linux快捷命令
1. 命令和路径补充 2. 主键盘快捷键 1.历史命令 history 历史命令 data 日期 Ctrl p 向上遍历 Ctrl n 向下遍历 2.光标移动 向左 Ctrl b 向右 Ctrl f 移动到当前行头部 Ctrl a 移动到当前行的行尾 Ctrl e 3.删除字符 光标前的字符就是光标前面第一个未被覆盖的字符 光标后的字符就是光标所覆盖的字符 删除光标前面的字符 Ctrl h 删除光标后面的字符 Ctrl d 删除光标前面所有字符 Ctrl u 4.智能提示(自动填充命令和路径) Tab(一次或两次) 5.文件路径 切换路径 cd 文件路径 清屏 Ctrl l3.linux系统目录结构
1.根目录 ls / *2./bin :存储最经常使用的命令* 3./boot:主要存储启动Linux时使用的一些核心文件,包括一些连接文件和镜像文件 *4./dec:dev是Device(设备)的缩写,该目录下存放的是linux的外部设备,在Linux中访问设备的方式和文件的方式是相同的* *5./etc :这个目录主要用来存储系统管理所需的配置文件和子目录* *6./home :用户的主目录,在Linux中,每个用户都有自己的目录,一般是以用户的账号名命名,都是普通用户,不是root用户* *6./lib: 这个目录里存着系统最基本的动态共享库,其作用类似于Windows的DLL文件,几乎所有的应用程序都需要用到这些共享库* 7./lost+found:这个目录一般情况下是空的。当系统非法关机后,这里就存储了一些文件 *8./media linux系统会自动识别一些设备,例如U盘、光驱等,当识别后,linux会把这些设备挂载到这个目录下(系统自动挂载)* *9./mnt:系统提供该目录是为了让用户挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱用的(手动挂载)* 10./opt:这是给主机额外安装软件所摆放的目录,比如你安装一个ORACLE数据库,则就可以放在这个目录下,默认是空的 11./proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的主机, echo 1> /proc/sys/net/ipv4/icmp_echo_ignore_all *12./root:该目录为系统管理员,也称作超级权限者用户主目录* 13./sbin:s就是Super User 的意思,这里存放的是系统管理员使用的系统管理程序。 14./selinux: 这个目录是Redhet/Centos所特有的目录,Selnux是一个安全机制,类似于Windows的防火墙,但是这个机制比较复杂,这个目录就是存放selinux相关的文件。 15./srv:该目录存放一些服务器启动之后需要提取的数据 16./sys:这是Linux2.6内核的一个很大的变化,该目录下安装了2.6内核中新出现的一个文件系统sysfs。 sysfs文件系统集成了下面3种文件系统信息,针对进程信息的procw文件系统,针对设备的devfs文件系统以及针对伪终端的devpts文件系统。改文件系统是内核设备的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。 17./tmp:这个目录是 用来存放一些临时文件 *18./usr:这是一个非常重要的目录,用户的很多应用程序和文件东都是存放在这个目录下,类似于windows下的program files目录* 19./usr/bin:系统用户使用的应用程序 20./usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序 21./usr/src:内核源代码默认的放置目录 22.var:这个目录存放看在不断扩充的东西,我们习惯将内些经常被修改的目录放在这个目录下,包括各种日志文件
在linux系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件
/etc:上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会 导致系统不能启动 /bin,/sbin,/usr,/sbin,这是系统预设的执行文件的放置目录,比如ls就是在/bin/ls目录下的 值得提出的是,/bin,/usr/bin是给系统用户使用的指令(除root外的普通用户),而/sbin,/usr/sbin则是给root使用的指令 /var:这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log目录下,另外mail的预设放置也是在这里4.用户目录:
1.绝对路径:从根目录开始写,/home/itcast/aa 2.相对路径:bb 相对于当前工作目录而言 . ->当前目录 .. ->当前上一个目录 - ->在临近访问的两个目录直接切换 cd - 3.itcast@ubuntu:~$ itcast:当前登录的用户 @:at 在 ubuntu:主机名 ~:用户的家目录,也称为用户的宿主目录 $:表示普通用户 #:表示超级用户 sudo su:切换到超级用户,需要输入当前用户的密码 exit:退出当前用户,返回上一个用户 切换到用户的家目录的三种方式 cd /home/itcast cd ~ cd5.文件和目录操作
1.查看我的资产 1.tree --自己安装 命令 tree 文件夹 则会以列出目录下的所有文件 在linux终端下各种颜色对应文件属性 白色:普通文件 蓝色:目录 绿色:可执行文件 红色:压缩文件 青色:链接文件,类似于windows的快捷方式 黄色:设备文件(block 块,char 字符 ,fifo管道) 灰色:其它文件 2.ls 查看 ls查看目录下的内容,但不是全部的,带.表示隐藏属性 ls -a :查看目录的所有内容 ls -l:会列出详细信息 lrwxrwxrwx 1 itcast itcast 20 2月 23 2015 copy 第一个字符表示文件类型:-表示普通文件,后九个字符表明权限:前三个文件所有者的权限,中间三个同组用户的权限,后三个为其它人权限,1表示文件的硬链接计数,第一个itcast表示该文件的所有者,第二个表示文件所属的组,20表示文件所占用的磁盘空间, 2.切换目录: cd 目录 cd :(三种回家方式) cd /home/aa cd ~ cd 查看当前路径: pwd 3.创建目录 mkdir dirname mkdir dir/dir/dir2 -p :必须加-p才能创建复合目录 4.删除空目录 rmdir 目录名 5.删除非空目录 rm 目录名 -r : -r表示递归,会递归的删除目录下的所有文件和目录 rm -ri 目录名 :删除前会进行提示 6.创建文件 touch 文件名:如果文件不存在,创建文件,如果文件存在,修改文件的时间 7.删除文件 rm 文件名 (-i) 8.复制文件 cp 源文件 目标文件:如果目标文件不存在就会创建文件,如果文件存在就会把存在的文件内的内容擦除,再将源文件中的内容复制到目标文件中 9.复制目录 cp 源目录名/ 目标目录 -r:如果目标目录不存在就会创建目标目录,并将源目录下的所有内容拷贝到目标目录中,不包过源目录名这一级,如果存在则直接把包括源文目录名这一级在内整体拷贝到目标目录中 //:cp 原目录/* 目标目录:将源目录下的所有内容,拷贝到目标目标下,且不包含原目录这一级 10.查文件的具体信息 cat 文件名:将文件信息展示到屏幕上,比较适合文件较小的文件,文件较大的话有可能在终端上只显示部分内容 more 文件名:按回车键翻页,每次多显示一行,按空格键每次翻一页,但是只能往后翻不能往前翻,按q或Ctrl c退出 less 文件名:按回车键翻页,每次多显示一行,Ctrl p 往前显示一行,Ctrl n往后显示一行,q 退出 head (-n) 文件名:默认显示文件的前10行,设定n后指定行数 tail (-n) 文件名:默认显示文件的倒数10行,设定n后指定行数 11.文化改名 mv 旧文件(目录)名 新文件(目录)名:改名字 mv 文件 目录(路径):移动 12.创建软链接 ln -s hello.c hello.soft:给hello.c文件创建一个快捷方式即软连接hello.soft,使用hello.soft就是使用hello.c,如果创建软连接使用的是相对路径,则就只能在创建的地方使用,如果使用的是绝对路径就可以在整个linux系统的任何地方使用 ln -s 目录 软连接名:给目录创建软连接 13.创建硬链接,相当于创建一个备份 ln hello.c hello.hard:相当于对hello.c进行了一个拷贝,但不是拷贝,因为不会占用实际的内存空间,只是做了一个映射,修改一个硬链接,其它硬链接所链接的内容也会改变,因为所有硬链接都映射的是一块数据, 只有文件才能创建硬链接,目录不行, 硬链接不需要使用绝对路径就可在linux所有位置使用 14.文件或目录的属性 wc:获取文本文件的信息,行数、单词数、字节数 od:查看二进制文件信息 od -t指定数据显示格式 du:查看当前目录各个文件的大小 du -h:以人类能看懂的方式 df:查看磁盘情况 df -h:以人类能看懂的方式** which 查看命令所在路径,一般查看的是外部的命令,不能查看cd 15.文件权限,用户,用户组 查看当前用户:whoami 修改文件权限:*chmod 1)文字设定法: chmod [who] [+|-|=] [mod] who:文件所有者u、同组用户g、其他人o,所有的人a +:增加权限 -:减少权限 =:覆盖原来权限 mode: r:读 w:写 x:执行 例子:chmod o+w tem(文件名) 2)数字设定法: -:没有权限 r:4 w:2 x:1 765: 7--表示文件所有者权限 6--表示文件同组权限 5--其他人权限 目录没有执行权限就进不去 例子:设置权限:chmod 765 tem(文件名) 减权限:chmod -001 tem 给其他人减一个执行权限 修改文件所有者和所属组(需要管理员权限)*chown chgrp chown zhangsan tem:将tem的文件所有者itcast修改为张三 chown 所有者:新的组名 tem:修改文件所有组 chgrp 组名 tem:直接修改所属组 16.*文件的查找和检索 1.按文件属性查找 文件名:find +查找目录+-name+"文件的名字" 文件名可以是全程也可是通配符组成 "hell*":*通配多个字符 "hel?":?通配1个字符 文件大小:find +查找目录+ -size + 文件大小 文件大小 +10k:表示大于10k的文件 -10:表示小于10k的文件 +10M:表示大于10兆的文件 -10M:表示小于10兆的文件 k要小写,M要大写 搜索范围 find +查找目录+-size +10M -size -500M:查找大于10M小于500M的文件 文件类型:find + 查找目录 + -type + d/f/b/c/s/p/l; 2.按文件内容 grep -r "查找的内容" + 查找路径:-r表示递归查找软件的安装与卸载
1.在线安装 apt-get 在线下载安装:sudo apt-get install tree 移除:sudo apt-get remove tree 更新软件列表:sudo apt-get update 清理所有软件安装包:sudo apt-get clean 清理的实际上是:/var/cache/apt/archives 目录下的.deb文件 aptitude 安装:sudo aptitude install tree 重新安装:sudo aptitude reinstall tree 更新:sudo aptitude update 移除:sudo aptitude remove tree 显示状态:sudo aptitude show tree 2.deb包安装 安装:sudo dpkg -i xxx.deb 删除:sudo dpkg -r xxx 3.源码安装 1.解压缩源代码bao 2.进入到安装目录:cd dir 3.检测文件是否缺失,创建makefile,检测编译环境:./configure 4.编译源码,生成库和可执行程序:make 5.把库和可执程序,安装到系统目录下:sudo make install 6.删除和卸载软件:sudo make distclean 7.上述安装步骤并不绝对,应该先看附带的README文件挂载与卸载设备
手动挂载需要挂载/mnt目录下,如果挂载到非/mnt目录会覆盖原来的内容,但原来的内容没有丢失,只是隐藏,当卸载后,才能再次看到 1.挂载u盘 sudo fdisk -l:列出所有设备信息,找到挂载的设备名称 sudo mount 路径/设备名字 需要挂载到的路劲 2.卸载u盘 卸载时退出该设备所在目录中 sudo umount 设备路径/设备名字



