目录
一、linux基础
1.shell
1.linux系统中运行的一种特殊程序 2.在用户和内核之间充当翻译 3.用户登录linux系统是自动加在一个shell程序 4.bash是linux系统中默认使用的shell程序
文件位于bin/bash
[root@localhost ~]# echo $SHELL 查看shell默认什么程序
[root@localhost ~]# cat /etc/shells 查看系统哪些程序支持shell
[root@localhost ~]# sh 切换到其他程序
2.linux命令
用于实现某一类功能的指令或程序 命令的执行依赖于解释器程序(例如:/bin/bash)
3.linux命令的分类
内部命令:属于shell解释器的一部分 外部命令:独立于shell解释器之外的程序
4.linux优点
1.一切都是一个文件。(包括硬件)
2.系统中拥有小型,单一用途的程序。(一个程序只负责做好自己的本职工作)
3.当遇到复杂任务,通过不同功能用途的程序组合起来完成。
4.避免令人困惑的用户界面就是没有复杂的图形界面。
5.连配置文件都存储在文本中,方便增删改查。
6.不在乎后缀名,有没有都无所谓,不是通过后缀名来定义文件的类型。
.代表当前目录..代表上一层目录
5.绝对路径 相对路径
相对路径是指目标相对于当前文件的路径,网页结构设计中多采用这种方法来表示目标的路径。相对路径有多种表示方法,其表示的意义不尽相同。表示方法如下:
./ :代表文件所在的目录(可以省略不写)
../ :代表文件所在的父级目录
../../ :代表文件所在的父级目录的父级目录
/ :代表文件所在的根目录
值得注意的是,(/:代表文件所在的根目录)其实可以理解成项目内部的绝对路径。
绝对路径是指完整的网址,假设图一中项目的网站域名为www.test.com,那么000.css的绝对路径应该是
https://www.test.com/HelloHBuilder/html/css/css1/000.css
路径 | 优点 | 缺点 | 备注 | |
相对路径 | ./当前目录 ../父级目录 | 至于文件相对位置有关便于项目移植 | 每次都要计算相对位置容易出错 | 开发中建议使用相对路径以上三种路径合理使用 |
/根目录 | 路径简单明了,不随环境变化而变化 | 不容易移植,如果移植到新文件夹,所设置的路径都会失效 | ||
绝对路径 | http:// | 路径简单明了,便于搜索引擎搜索 | 不容易移植,如果域名变化,设置都会失效 | 链接外链是需要使用相对路径 |
6.通配符
二、命令
linux命令的通用格式
命令字 [选项] [参数]
选项:用于调节命令的具体功能 “-”引导短格式选项,
例如“ls -a” “--”引导长格式选项,
例如“ls -help” 参数:命令的对象,如文件、目录名等。
命令执行的顺序
内部命令>缓存命令(hash)>外部命令
命令执行顺序:先找hash缓存,再找内部命令,再找外部命令
例如:ls命令在缓存中有这条,我将这条命令从缓存中删掉后,执行ls这个程序的时候就会找内部命令,因为ls属于外部命令,所以内部命令找不到,最终在外部命令找到ls程序,并执行。
命令操作技巧
1.Tab键:自动补齐;按两次Tab键,系统将输出可用的名称列表
2.反斜杠"\":强制换行
3.Ctrl+ U :快速删除当前光标处之前的所有字符
4.Ctrl+ K :快速删除从当前光标处到行尾的所有字符
5.Ctrl+L :快速清空当前屏幕中的显示内容
6.Ctrl+ C :取消当前命令行的编辑
内部命令help
查看Bash内部命令的帮助信息
命令的"--help" 选项 适用于大多数外部命令
使用man命令阅读手册页 使用“上”、“下”方向键滚动文本
使用Page Up和Page Down键翻页
按Q或q键退出阅读环境、按"/”键查找内容
命令的详解
ls(list)——列表显示目录内容
-l:以长格式(Long)显示文件和目录的列表
-a:显示所有(All)子目录和文件的信息
-A:与-a选项的作用基本类似,但有两个特殊隐藏目录不会显示,
“.“和”..“ -d:显示目录(Directory)本身的属性,而不是显示目录中的内容
-h:以更人性化(Human)的方式显示出目录或文件的大小,此选项需要结合
-l选项一起使用
-r:以递归(Recursive)的方式显示指定目录及其子目录中的所有内容
alias——设置别名
通过别名机制简化常用的、比较长的命令
alias命令别名=命令
示例 :设置myls为Is -alh的别名 alias myls='ls -alh'
du(disk usage)——统计磁盘
用于统计指定目录(或文件)所占用磁盘空间的大小, du命令常用的几个选项如下:
-a:统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录
-h:以更人性化的方式(默认以KB计数 ,但不显示单位)显示出统计结果
-S:只统计所占用空间总的(Summary)大小,而不是统计每个子目录、文件的大小
应用举例: du -sh/var/log/统计所有文件总共占用的空间大小
touch——创建文件
创建空文件用于测试
touch
当目标文件已存才时,将更新改文件的时间标记
touch text
mkdir(make directory)——创建目录
作用创建新目录 格式:mkdir [选项] 目录位置及名称
示例:
当前目录下创建名为public_html的zimul ·mkdir public_html
创建目录/aa,在/aa目录下常见子目录bb在/aa/bb目录下创建子目录
cc mkdir -p /aa/bb/cc
ln——创建链接文件
为文件或目录建立链接文件,类似于Windows系统的快捷方式
链接文件类型
软链接(又称为符号链接)
硬链接
In [-s] 源文件或目录...链接文件或目标位置
示例 In -S /bin/bzip2 /bin/wx/
cp(copy)——复制
作用:复制文件或者目录
格式:cp[选项]...源文件或目录...目标文件或目录
需要复制多个文件或目录时,目标位置必须是目录,而且目标目录必须已经存在。
cp命令较常 用到的几个选项如下:
-f:覆盖目标同名文件或目录时不进行提醒,而直接强制(Force)复制
-i:覆盖目标同名文件或目录时提醒用户确认(Interactive ,交互式)
-p:复制时保持(Preserve)源文件的权限、属主及时间标记等属性不变
-r:复制目录时必须使用此选项,表示递归复制所有文件及子目录
rm(remove)——删除
作用:删除指定的文件或者目录
格式:
rm [选项] 要删除的文件或目录
常用选项
-f:不提醒,直接强制删除
-i:提醒用户确认
-r:递归删除整个目录树
示例 直接删除public html目录中grub目录树
rm -rf public html/grub/
以提示确认方式删除public html 目录中 apg.conf文件
*rm -i public _html/apg.conf
mv(move)——移动
作用
将指定的文件或目录转移位置
如果目标位置与源位置相同,则相当于执行重命名操作
格式
mv [选项]... 源文件或目录... 目标文件或目录
示例 把当前目录中mytouch程序文件改名为mkfile *mv mytouch mkfile
将mkfile文件移动到已存在的目录public_ html中,文件名保持不变 *mv mkfile public_ htmI/
which——查找命令位置
作用:查找Linux命令程序所在的位置
格式 which 命令|程序名
示例 which Is 注意 默认当找到第一个目标后不再继续查找 若在所有搜索路径中查找,
加"-a"选项 无法查找内部命令所对应的程序文件
例如: which cd
find——查找文件目录命令
作用:精细查找文件或目录
格式 find [查找范围] [查找条件表达式]
常用查找条件 按名称查找
"-name" 按文件大小查找
”-size" 按文件属主查找
"-user" 按文件类型查找
"-type"文件的类型进行查找
-name:根据目标文件的名称进行查找,允许使用“*”以及“?”通配符
实例:
递归查找/etc目录中名称以"resol" 开头、以".conf" 结尾的文件 find /etc -name”resol* .conf"
-size :根据目标文件的大小进行查找,一般使用"+“、”_”号设置超过或小于指定的大小作 为查找条件。常用的容量单位包括kB (注意k是小写)、MB、GB
示例
查找/boot目录中超过10MB的文件 find /boot -size +10M
-type: 根据文件的类型进行查找,类型指的是普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(C)等 块设备指的是成块读取数据的设备 (如硬盘、内存等) 而字符设备指的是按单个字符读取数据的设备 (如键盘、鼠标等)
示例 查找 /boot目录中所有的子目录 -find /boot -type d
“同时使用多个查找条件时,各表达式之间可以使用逻辑运算符“-a”、”-0”分别表示而且( and )或者(or)
示例 查找 /boot目录中超过1MB和 (或)名称以 vm开头的所有文件
find /boot -size +1M -a -name "vm find /boot -size +1M -0 -name "vm**