目录
一、shell命令规则
linux命令的格式
命令 [选项] [参数]
举例:
>> ls
>> ls -l
>> ls -l /home
- 命令这一部分肯定是存在
- 选项和参数不一定存在,可有可无。
- 选项和参数取决于你使用该命令实现的具体目的。
- 选项是以"-"来指明的
- 命令、选项、参数之间是以空格来隔开的,一个或多个空格都视为1个空格。
- 如:ls -l /home与ls -l /home的目的是一样的
- 完成linux命令输入后,按下enter键,即可执行该命令
二、基础命令详解(部分)
ls :列出目录内容
- 常用的选项:
- -l(long的缩写),显示目录下文件的更详细的信息(文件权限、文件最后修改时间、文件大小)
- -a(all的缩写),显示了隐藏文件
- -h(human-able的缩写),将文件大小以K(KB)、M(MB)、G(GB)来表示
mkdir : 创建目录
- 常用的选项:
- -p(parents的缩写),连续创建多级目录(父目录和子目录),如果父目录不存在,则需要加入-p参数。
举例
>> mkdir dir0 //创建了dir0这个目录 >> mkdir -p dir1/dir2 //创建了dir1(父目录)和dir2(子目录)
rmdir :删除目录
rmdir 目录名
注意:rmdir不能删除非空目录(非空目录:该目录下面有子目录或者文件)
touch:新建文件
- 举例
```shell
>> touch file1 //在当前目录新建名为file1的文件
```
注意事项
- 同一目录无法创建同名的文件
- linux的文件名是区分大小写的,如file1和File1是不同文件。(这一点跟windows不同)
mv:修改文件(目录)名、移动路径
举例
#mv 旧文件名 新文件名 ====>修改文件名 >> mv file1 filea //将当前目录的文件file1改名为filea # mv 旧目录名 新目录名 ====>修改目录名 >> mv dir1 dira //将当前目录下的目录dir1改为dira(注意一定是当前目录下) #mv 文件名 目录名 ====>移动路径 >> mv filea dira //将当前目录下filea移动到dira子目录
cp:复制文件(目录)
- 常用的选项:
- -i(interactive(交互)的缩写),删除文件(目录)之前,要求你确认是否同意删除
- r(recursive(递归)的缩写),递归删除指定目录下的子目录和文件
- f(force(强制)的缩写),强制删除
举例:
cp -r dira dirb //复制dira目录下的所有内容到dirb cp -i file2 dira //如果dira目录下面有同名的file2,会让你二次确认
cat 查看文件内容
- 常用的选项:
- -n : 显示内容并在内容前显示行号
举例:不同形式的查看
cat file1 //将file1的内容打印到标准输出中(默认标准标准输出指向终端) cat file1 file2 //将file1和file2的内容串联并依次全部打印到标准输出中 cat -n file1 //显示内容并在内容前显示行号
清除屏幕
- clear : 刷新屏幕,保留历史命令操作记录;此命令本质上只是让终端向后翻一页,当向上滚动鼠标时,还是可以看到之前命令的操作记录
- reset:重新初始化屏幕,清除历史命令操作记录
man
说明:
main有9册内容,上图为9册内容的侧重点
man ls //默认使用第1册 man 2 ls //选择使用第2册(这样的格式选择其他几册)
进阶命令
find:
? 作用: 查找符合条件的文件
? 格式: find 目录名 选项 查找条件
常用的选项:
- -name: 表示以名字来查找文件
- -mtime: 表示查找最近几天(几个小时)之内(之前)有变动的文件
举例:
//举例1: >> find /work/001_linux_basic/dira/ -name "test1.txt" /* 说明: a)/work/001_linux_basic/dira/指明了查找的路径 b)-name表明以名字来查找文件 c)"test1.txt",就指明查找名为test1.txt的文件 */ //举例2: >> find /work/001_linux_basic/dira/ -name "*.txt" /* 说明:* 通配符的意思,表示查找该目录下说有.txt文件 */ //举例3: >> find -name "*.txt" //如果没有指定查找目录,则为当前目录。 >> find //举例4: >> find /home -mtime -2 //查找/home目录下两天内有变动的文件
grep:
目的:使用grep命令来查找文件中符合条件的字符串
格式:grep [选项][查找模式] "字符串" [文件名]
常用的选项:
- r(recursive):递归查找
- n(number):显示目标位置的行号
- -w : 全字匹配
举例:
//举例1 >> grep -n "aaa" test_a.txt //在文件中查找"aaa" 有显示 //举例2 >> grep -rn "aaa" ./ >> grep -rn "aaa" * //跟上述一个意思,在这目录里查找”aaa" //举例3: >> grep -wn "aaa" a.txt /* 只会找aaa的内容,若是”aaabba" 也不算全字匹配 aaa basd 这样算 */
压缩/解压缩(gzip、‘bzip2、tar)
? 压缩的概念
1)压缩的目的:
在网络传递文件时,可以先将文件压缩,然后传递压缩后的文件,从而减少网络带宽。
接受者接受文件后,解压即可。
? 2)压缩的类型
有损压缩、无损压缩。
a)有损压缩:
如mp4视频文件,即使压缩过程中,减少了很多帧的数据,对观看者而言,也没有影响。当然mp3音乐文件也是有损压缩。
b)无损压缩:
如普通文件的压缩,为了保证信息的正确传递,不希望文件经过压缩或解压后,出现问题。
? 单个文件的压缩(解压)使用gzip 和bzip2
多个文件和目录使用tar
gzip
常用的选项:
1) -l(list) 列出压缩文件的内容
查看
gzip -l 压缩文件名
比如:gzip -l pwd.1.gz2)-k(keep) 在压缩或解压时,保留输入文件;
解压
gzip -kd 压缩文件名
比如:gzip -kd pwd.1.