Linux学习
第三讲 系统目录结构
3.1 对目录的解释
/bin:
bin是Binary的缩写, 这个目录存放着最经常使用的命令。
/boot:
这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
/dev:
dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
/etc:
这个目录用来存放所有的系统管理所需要的配置文件和子目录。
/home:
用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
/lib:
这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
/lost+found:
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/media:
linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
/mnt:
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
/opt:
这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
/proc:
这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:
/root:
该目录为系统管理员,也称作超级权限者的用户主目录。
/sbin:
s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
/selinux:
这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。
/srv:
该目录存放一些服务启动之后需要提取的数据
/sys:
这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。
sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。
该文件系统是内核设备树的一个直观反映。
当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
/tmp:
这个目录是用来存放一些临时文件的。
/usr:
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
/usr/bin:
系统用户使用的应用程序。
/usr/sbin:
超级用户使用的比较高级的管理程序和系统守护程序。
/usr/src:
内核源代码默认的放置目录。
/var:
这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
/run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。
第四讲 Linux常用命令
4.1 文件处理命令
4.1.1命令格式与目录处理命令ls
命令格式
命令 [-选项] [参数]
例如:ls -la /etc
说明:
- 个别命令使用不遵循此格式
- 当有多个选项时,可以写在一起
- 简化选项与完整选项 -a=–all
目录处理命令:ls
命令名称:ls
英文原意:list
命令所在路径:\bin\ls
执行权限:所有用户
功能描述:现实目录文件
语法:ls [-ald] [文件或目录]
- -a显示所有文件,包括隐藏文件
- -l详细信息显示
- -d查看目录属性
-rw-r–r--
-文件类型(-二进制文件d目录 l软链接文件
rw- r-- r–(下面是对应位置)
u所有者 g所属组 o其他人
r读 w写 x执行
l软连接
4.1.2 目录处理命令
命令名称:mkdir
**命令英文原意:**make dirctories
命令所在路径:/bin/mkdir
**执行权限:**所有用户
**语法:**mkdir -p[目录名]
功能描述:创建新目录; -p 递归创建
范例:$mkdir -p/tmp/…(直接按路径进行创建)
**命令名称:**cd
**命令英文原意:**change directory
**命令所在路径:**shell内置命令
**执行权限:**所有用户
**语法:**cd [目录]
**功能描述:**切换目录
范例:
$cd /tem/… 切换到制定目录
$cd …返回上一级目录
**命令名称:**pwd
**命令英文原意:**print working directory
命令所在路径:/bin/pwd
**执行权限:**所有用户
**语法:**pwd
**功能描述:**显示当前目录
范例:$pwd
**命令名称:**rmdir
**命令英文原意:**remove empty directory
命令所在路径:/bin/rmdir
**执行权限:**所有用户
**语法:**rmdir[目录]
**功能描述:**删除空目录
范例:
$rmdir/tmp/…
**命令名称:**cp
**命令英文原意:**copy
命令所在路径:/bin/cp
**执行权限:**所有用户
**语法:**cp -rp [原文件或目录] [目标目录]
-r 复制目录
-p 保留文件属性
**功能描述:**复制文件或目录
范例:
$cp -r /tem/Japan/cangjing /root
将目录 / t e m / j a p a n / c a n g j i n g /tem/japan/cangjing /tem/japan/cangjing复制到目录/root下
$cp -p /tem/japan/cangjing /tmp/Japan/longze /root
将 / t m p / J a p a n /tmp/Japan /tmp/Japan目录下的cangjing和longze目录复制到/root下,保持目录属性(比如时间)
**命令名称:**mv
**命令英文原意:**move
命令所在路径:/bin/mv
**执行权限:**所有用户
**语法:**mv [原文件或目录] [目标目录]
**功能描述:**剪切文件,改名
范例:
**命令名称:**clear
**功能描述:**清屏
**命令名称:**rm
**命令英文原意:**remove
命令所在路径:/bin/rm
**执行权限:**所有用户
**语法:**rm -rf [文件或目录] -r 删除目录 -f 强调执行
**功能描述:**删除
范例:
$rm /tmp/yum.log 删除文件
$rm -rf /tmp/Japan/longze删除目录
4.1.3 文件处理命令
**命令名称:**touch
命令所在路径:/bin/touch
**执行权限:**所有用户
**语法:**touch [目录]
**功能描述:**创建空文件
范例:$touch Japan.list
**命令名称:**cat
命令所在路径:/bin/cat
**执行权限:**所有用户
**语法:**cat [文件名]
**功能描述:**显示文件内容 -n 显示行号
范例:$cat /tem/…
$cat -n/etc/service
**命令名称:**more
命令所在路径:/bin/more
**执行权限:**所有用户
**语法:**more [目录] (空格)或f—翻页 (ENTER)—换行 q或Q—退出
**功能描述:**分页显示文件内容
范例:$more /tem/… 切换到制定目录
**命令名称:**less(与more类似)
命令所在路径:/user/bin/more
**执行权限:**所有用户
**语法:**less [目录]
**功能描述:**分页显示文件内容(可向上翻页)
范例:$more /etc/service
**命令名称:**head
命令所在路径:/bin/head
**执行权限:**所有用户
语法: head [文件名] -n 制定行数
**功能描述:**显示文件前面几行
范例:$more -n 20 /etc/service
**命令名称:**tail
命令所在路径:/bin/tail
**执行权限:**所有用户
**语法:**tail [目录]
**功能描述:**显示文件后面几行 -n指定行数 -f动态显示文件末尾内容
范例:$tail -n 18 etc/service
4.1.4 链接命令
命令名称:ln
**命令英文原意:**link
命令所在路径:/bin/ln
**执行权限:**所有用户
语法: ln [目录] -s[原文件] [目标文件] -s[创建软链接]
**功能描述:**生成链接文件
范例:
$ln -s /etc/issue /tmp/issue.soft (创建文件/etc/issue的软链接/tmp/issue.soft)
$in /etc/issue /tmp/issue.hard(创建文件/etc/issue的硬链接/tmp/issue.hard)
4.2 权限管理命令
4.2.1 权限管理命令chmod
**命令名称:**chmod
**命令英文原意:**change the permissions mode of a file
命令所在路径:/bin/chmod
**执行权限:**所有用户
语法: chmod [文件名] [{ugoa}{±=}{rwx}] [文件或目录] [mode=421] [文件或目录] -R 递归修改
**功能描述:**改变文件或目录权限
范例:
$chmod g+w testfile 赋予文件testfile所属组写权限
$chmod -R 777 testdir 修改目录testfile及其目录下文件为所有用户具有全部权限
文件目录权限总结:
代表字符 | 权限 | 对文件的含义 | 对目录的含义 |
---|---|---|---|
r | 读权限 | 可以查看文件内容 | 可以列出目录中的内容 |
w | 写权限 | 可以修改文件内容 | 可以在目录创建,删除文件 |
x | 执行权限 | 可以执行文件 | 可以进入目录 |
4.2.2 其他权限管理命令
**命令名称:**chown
**命令英文原意:**change file ownership
命令所在路径:/bin/chown
**执行权限:**所有用户
语法: chown [目录] [文件或目录]
**功能描述:**改变文件或目录的所有者
范例:
$chown shenchao fengjie 改变文件fengjie的所有者为shenchao
**命令名称:**chgrp
**命令英文原意:**change file group ownership
命令所在路径:/bin/chgrp
**执行权限:**所有用户
语法: chgrp [用户组] [文件或目录]
**功能描述:**改变文件或目录的所属组
范例:$chgrp lampbrother fengjie 改变文件fengjie的所属组为lampbrother
**命令名称:**umask
**命令英文原意:**the user file-creation mask
**命令所在路径:**shell内置命令
**执行权限:**所有用户
语法: umask [文件名] -S 以rwx形式显示新建文件缺省权限
**功能描述:**显示,设置文件的缺省权限
范例:$umask -S
4.3 文件搜索部分
4.3.1 文件搜索命令find
**命令名称:**find
命令所在路径:/bin/find
**执行权限:**所有用户
语法: find [搜索范围] [匹配条件]
**功能描述:**文件搜索
范例:
$ find /etc -name init 在目录/etc中查找文件
-name 不区分大小写
**$**find / -size +204800 在根目录下查找大于100MB的文件
+n 大于 -n 小于 n等于
**$**find /home -user shenchao 在根目录下查找所有者为shenchao的文件
-group 根据所属组查找
**$**find /etc -cmin -5 在/etc下查找5分钟内被修改过属性的文件和目录
-amin 访问时间 access
-cmin 文件属性 change
-mmin 文件内容 modify
**$**find /etc -size +163840 -a -size -204800 在/etc下查找大于80MB小于100MB的文件
-a 两个条件同时满足
-o 两个条件满足一个即可
**$**find /etc -name inittab -exec ls -l {} \ 在/etc下查找inittab文件并显示其详细信息
-exec/-ok 命令{},\对搜索结果执行操作
$ find -type 根据文件类型查找 f文件 d目录 l软链接文件
-inum 根据i节点查找
4.3.2 其他文件搜索命令
**命令名称:**locate
命令所在路径:/usr/bin/locate
**执行权限:**所有用户
语法: [文件名]
**功能描述:**在文件资料库中查找文件
范例:$locate inittab
**命令名称:**which
命令所在路径:/usr/bin/which
**执行权限:**所有用户
语法: which 命令
**功能描述:**搜索命令所在目录及别名信息
范例:$which ls
**命令名称:**whereis
命令所在路径:/usr/bin/whereis
**执行权限:**所有用户
语法: whereis [命令名称]
**功能描述:**搜索命令所在目录及帮助文档路径
范例:$whereis ls
**命令名称:**grep
命令所在路径:/bin/grep
**执行权限:**所有用户
语法: grep -iv [指定字串] [文件]
**功能描述:**在文件中搜寻字串匹配的行并输出 -i 不区分大小写 -v 排除制定字串
范例:$grep ,mysql /root/install.log
4.3 帮助命令
**命令名称:**man
**英文原意:**manual
命令所在路径:/usr/bin/man
**执行权限:**所有用户
**语法:**man [命令或配置文件]
**功能描述:**活动帮助信息
范例:
$man ls 查看ls命令的帮助信息
$man services 查看配置文件services的帮助信息
小命令
whatis 命令
查看命令的简要信息
apropos 配置文件
查看配置文件的简要信息
命令 --help
查看命令主要选项
**命令名称:**help
命令所在路径:shell内置命令
**执行权限:**所有用户
**语法:**help 命令
**功能描述:**获得shell内置命令的帮助信息
范例:$help umask 查看umask命令的帮助信息
4.5 用户管理命令
**命令名称:**useradd
命令所在路径:/usr/bin/useradd
**执行权限:**root
**语法:**useradd 用户名
**功能描述:**添加新用户
范例:$useradd xya
**命令名称:**passwd
命令所在路径:/usr/bin/passwd
**执行权限:**所有用户
**语法:**passwd 用户名
**功能描述:**设置用户密码
范例:$passwd yangmi
**命令名称:**who
命令所在路径:/usr/bin/who
**执行权限:**所有用户
**语法:**who
**功能描述:**查看登陆用户信息
范例:$who
**命令名称:**w
命令所在路径:/usr/bin
**执行权限:**所有用户
**语法:**w
**功能描述:**查看登陆用户详细信息
范例:$w
4.6 压缩解压命令
**命令名称:**gizp
命令所在路径:/usr/bin/gzip
**执行权限:**所有用户
**语法:**gizp [文件]
**功能描述:**压缩文件
压缩后文件格式:.gz
**命令名称:**gunzip
命令所在路径:/usr/bin/gunzip
**执行权限:**所有用户
**语法:**所有用户
**功能描述:**解压缩.gz的压缩文件
范例:$gunzip boduo.gz
**命令名称:**tar
命令所在路径:/usr/bin/tar
**执行权限:**所有用户
**语法:**tar 选项 [-zcf] [压缩后文件名] [目录] -c 打包 -v 显示详细信息 -f 指定文件名 -z 打包同时压缩
**功能描述:**打包目录
压缩后文件格式:.tar.gz
范例:
**命令名称:**tar
语法: -x 解包 -v 显示详细信息 -f指定解压文件 -z解压缩
**功能描述:**解压缩
范例:$tar -zxvf Japan.tar.gz
**命令名称:**zip
命令所在路径:/usr/bin/zip
**执行权限:**所有用户
**语法:**zip 选项[-r] [压缩后文件名] [文件或目录] -r 压缩目录
**功能描述:**压缩文件或目录
压缩后文件格式:.zip
**命令名称:**bzip2
命令所在路径:/usr/bin/bzip2
**执行权限:**所有用户
**语法:**bzip2 选项 [-k] [文件] -k 产生压缩文件后保留原文件
**功能描述:**压缩文件
压缩后文件格式:.bz2
范例:$ bzip2 -k boduo $tar -cjf Japan.tar.bz2 Japan
**命令名称:**bunzip2
命令所在路径:/usr/bin/bunzip2
**执行权限:**所有用户
**语法:**bunzip2 选项 [-k] [压缩文件] -k 解压缩后保留原文件
**功能描述:**解压缩
范例:$ bunzip2 -k boduo $tar -xjf Japan.tar.bz2
4.7 网路命令
**命令名称:**write
命令所在路径:/usr/bin/write
**执行权限:**所有用户
**语法:**write <用户名>
**功能描述:**给用户发信息,以Crtl+D保存结束
范例:#write linzhiling
**指令名称:**wall
**指令英文原意:**write all
指令所在路径:/usr/bin/wall
**执行权限:**所有用户
**语法:**wall [message]
**功能描述:**发广播消息
范例:#wall Shenchao is a honest man!
**指令名称:**ping
指令所在路径:/bin/ping
**执行权限:**所有用户
**语法:**ping 选项 IP地址 -c 指定发送次数
**功能描述:**测试网路连通性
范例:#ping 192.168.1.156
**指令名称:**ifconfig
**命令英文原意:**interface configure
指令所在路径:/sbin/ifconfig
**执行权限:**root
**语法:**ifconfig 网卡名称 IP地址
**功能描述:**查看和设置网卡信息
范例:#ifconfig eth0 192.168.8.250
**指令名称:**mail
指令所在路径:/bin/mail
**执行权限:**所有用户
**语法:**mail [用户名]
**功能描述:**查看发送电子邮件
范例:#mail root
**指令名称:**last
指令所在路径:/bin/last
**执行权限:**所有用户
**语法:**last
**功能描述:**列出目前与过去登入系统的用户信息
范例:#last
**指令名称:**traceroute
指令所在路径:/bin/traceoute
**执行权限:**所有用户
**语法:**traceroute
**功能描述:**显示数据包到主机间的路径
范例:#traceoute www.lampbrother.net
**指令名称:**netstat
指令所在路径:/bin/netstat
**执行权限:**所有用户
**语法:**netstat [选项]
**功能描述:**显示网络相关信息
选项:
-t : TCP协议
-u : UDP协议
-l : 监听
-r : 路由
-n :显示IP地址和端口号
范例:
#netstat -tlun 查看本机监听的端口
#netstat -an 查看本机所有的网络连接
#netstat -rn 查看本机路由器
**指令名称:**setup
指令所在路径:/bin/setup
**执行权限:**root
**语法:**setup
**功能描述:**配置网络
范例:#setup
4.8 关机和重启
**指令名称:**shutdown
语法:
-c 取消前一个关机命令
-h 关机
-r 重启
功能描述:
范例:#shutdown [选项] 时间
其他关机命令:
#halt
#poweroff
#init 0
其他重启命令
#reboot
#init 6
系统运行级别
0—关机
1—单用户
2—不完全多用户,不含NFS服务
3—完全多用户
4—未分配
5—图形界面
6—重启
退出登录命令
logout
第五讲 文本编辑器Vim
5.1 Vim常用操作
Vim没有菜单,只有命令
进入:vim filename
退出:wq