zip命令:压缩文件
语法格式:zip [选项] 目标压缩文件名称 待压缩包
选项:
-v 显示详细信息
-d 从压缩包里删除文件
-m 将文件剪切到压缩包里
-r 递归压缩
-x 排除文件
-c 加一行备注
-z 加备注
-T测试压缩包完整性
-e 加密
-q 安静模式
-0-9 数字越小压缩速度越快 数字越大压缩越好
tar命令:最常用的归档命令
语法格式:tar [选项] 源文件或目录
选项:
-f 用于指定打包文件名。 当与-c选项一起使用时,创建的tar包文件使用该选项指定的文件名 当与-x选项一起使用时,则释放该选项指定的tar包文件 (必选项)
-c 创建.tar格式的包文件
-x 释放.tar格式的包文件
-t 查看包中的文件列表
-v 表示在命令执行时显示详细的提示信息
-p 打包时保留文件及目录的权限 z 调用gzip程序,以gzip格式压缩或解压缩文件(.tar.gz)
-j 调用bzip2程序,以bzip2格式压缩或解压缩文件(.tar.bz2)
-J 使用xz压缩或解压缩文件(.tar.xz),xz的压缩率通常比bzip2更高
-z 调用gzip程序,以gzip格式压缩或解压缩文件(.tar.gz)
-C(大写字母C) 和-x选项一起使用,表示释放包时指定释放的目标路径
命令示例:
1.使用tar命令对文件进行打包压缩与解压缩:
使用gzip方式对文件进行压缩,并指定压缩名为 tar_gzip.tar.gz
使用bzip2方式对文件夹进行压缩,并指定压缩名为 tar_bzip2.tar.bz2
使用xz方式对文件进行压缩,并指定压缩名为 tar_xz.tar.xz
新建文件file1.txt,file2.txt,file3.txt
对文件file1.txt和file2.txt,进行压缩(使用gzip方式),排除file3.txt(即不对file3进行压缩)
并指定压缩名为tar_file.tar.gz
新建文件file4.txt,将file4.txt添加到tar_file.tar.gz中
查看压缩包tar_file.tar.gz有哪些文件及目录(不解压,只查看)
解压tar.tar到指定目录tar_test(没有这个目录就创建)
sftp命令:是一个交互式文件传输命令
它类似于ftp传输协议,属于ssh, 但它进行加密传输,相对FTP来讲有更高的安全性。
命令示例
.在Linux上的/root目录创建一个Linux.txt,在windows上创建windows.txt
通过sftp的 get和put命令,将windows上的windows.txt推送到linux上
通过sftp的 get和put命令,将linux上的linux.txt推送到windows上
shell变量:变量简单说就是让某一个特定字符串代表不固定的内容,变量可分为两类:环境变量(全局变量)和普 通变量(局部变量)
变量命名的规则:只能使用数字、字母和下划线,且不能用数字开头 变量名和变量值用“=”连接 等号两边不能有空格符 变量的赋值
(1)环境变量也可称为全局变量,可以在创建它们的Shell 及其派生出来的任意子进程 Shell 中使用,环境变 量又可分为自定义环境变量和 bash 内置的环境变量。 (1)bash内置的环境变量:用于定义 Shell 的运行环境,保证 Shell 命令的正确执行,Shell 通过环境 变量来确定登录用户名、命令路径、终端类型、登录目录等
(2)自定义环境变量:自定义环境变量可以在命令行中设置和创建,但用户退出命令时这些变量值就会 丢失。如果希望永久保存环境变量,可在用户家目录下的 .bash_profile 或 .bashrc 文件中 在用户家目录中设置的变量只用用户本人能够访问,或者全 局配置 /etc/bashrc 或 /etc/profile 文件中定义,在将环境变量放入上述的文件中后,每次用户登 录时这些变量都将被初始化。
命令示例:
3.创建普通变量local_data=1并访问
创建环境变量ROOT_DATA=root, 只有root用户可以访问到
创建环境变量USER_DATA=user, 只有普通用户可以访问到
创建环境变量DATA=all, root用户和普通用户都可以访问到
find命令:可按照文件名、大小、时间、权限、类型、所属者、所属组来搜索文件
语法格式:find 路径 [选项] 搜索内容
选项:
-size 匹配文件的大小(+50KB为查找超过50KB的文件,而-50KB为查找小于50KB的文 件)
-mtime -n +n 匹配修改内容的时间(-4指小于等于4天内的文件名;+4,大于等于5天前的文件 名;4指前4~5那一天的文件)
-atime -n +n 匹配访问文件的时间
-ctime -n +n 匹配修改文件权限的时间
-newer f1 !f2 匹配比文件f1新但比f2旧的文件
-perm 匹配权限(mode为完全匹配,-mode为包含即可)
-user 匹配所有者 -group 匹配所有组
-nouser 匹配无所有者的文件
-nogroup 匹配无所属组的文件
-type b/d/c/p/l/f 匹配文件类型(后面的字母参数依次表示块设备、目录、字符设备、管道、链接文 件、文本文件)
-prune 忽略某个目录
-exec …… {}\; 后面可跟用于进一步处理搜索结果的命令
find命令示例:
创建3个文件test1.txt, test2.txt, test3.txt
使用find查找test1.txt,test2.txt, test3.txt
使用别名: 将上边命令命名为myfind
取消别名
history命令:列出曾经使用的命令
语法格式:history [选项]
history 列出全部历史命令
history x 列出最近的x条命令
history -c 将目前shell中的所有history命令消除
history -w 将本次登录的命令写入命令历史文件中, 默认写入~/.bash_history,会自动保存
history -r 将命令历史文件中的内容读入到目前shell的history记忆
命令示例:
查看最近使用的10条历史命令
printf命令:与 echo 类似,是格式化输出的命令。
语法:printf [选项]
printf [格式] 文件
格式:
\a 警告字符,通常为ASCII的BEL字符
\b 后退
\c 抑制(不显示)输出结果中任何结尾的换行字符(只在%b格式指示符控制下的参数字符串中有效),而且,任何留在参数里的字符、任何接下来的参数以及任何留在格式字符串中的字符,都被忽略
\f 换页
\n 换行
\r 回车
\t 水平制表符
\v 垂直制表符
\\ 一个字面上的反斜杠字符,即 \ 本身
\ddd 表示1到3位数八进制值的字符。仅在格式字符串中有效
\0ddd 表示1到3位的八进制值字符
%s 字符串
%f 浮点型
%b 相对应参数中包含转义字符时,可以使用此替换符进行替换,对应的转义字符被转义。
%c ASCII字符,显示想对应参数的第一个字符。
%d, %i 十进制整数
%o 不带正负号的八进制值
%u 不带正负号的十进制值
%x 不带正负号的十六进制值,使用a至f表示10到15
%X 不带正负号的十六进制值,使用A至F表示10到15
%% 表示 % 本身
命令示例:在一行上执行两个命令,打印123和从root切换到普通用户
引号说明:
无引号不能识别字符串之间的空格 单引号和双引号可以 但单引号不能识别引号里面的变量 双引号可以
反引号的作用:
反引号括起来的字符串被shell解释为命令行,在执行时,shell首先执行该命令行,并以它的标准输出结果取代整个反引号(包括两个反引号)部分