温故知新:
上次说的是文件与目录的管理和配置,了解了相关的权限和访问组别,这节主要记录下相关的操作命令吧,毕竟理论知识还是挺枯燥的,还是实用更有意思。
相关命令的介绍:
在介绍如何改变文件属性以及权限之前,得先学习一下如何在目录之间切换,以及对基本文本文件的创建和读取。只列举了一些比较常用的,较详细的就用man来查询下吧,或者谷歌度娘神马的。。。
1.查看文件与目录: ls
常用的参数:
-l 详细格式列举出所有文件和文件夹(不包括隐藏文件和. ..2个路径)
-a 简单格式(只有文件或目录名)列举初所有(包括隐藏)文件(夹)
-h 将文件大小以可读的K,M,G等可读的形式输出(默认是B)
-i 列举出文件(夹)所在的inode编号
-d 仅列出目录本身(一般就是那个”.”)
2. pwd:显示当前目录
cd . 代表此层目录
cd ..代表上一层目录
cd – 代表前一个工作目录
cd ~当前用户的根目录,也就是包含文档,下载,视频,桌面的那个目录
cd account 进入该用户的根目录。
@大家注意在路径切换的时候要多用[Tab][Tab]键进行补全噢,很有帮助的
3. mkdir 目录名: 新建空目 录
rmdir 目录名:删除空目录
touch 文件名:新建文件
@rmdir只能删除空目录噢,若要删除非空的目录就得用 rm -r了(下面提到)
4.复制:cp 源文件 目标文件
常用的参数:
-r 递归复制,也就是复制目录的意思
-p 连通文件的属性一起复制过去,而非使用默认属性(备份的时候使用)
-i 若目标文件存在,在覆盖之前询问
-s 复制为快捷方式(symbolic link)
-u 若目标文件比源文件旧则更新目标文件
@将文件复制到当前目录: cp 源文件 . (最后的点不能丢噢)
5.删除: rm
-r 递归删除,删除目录时使用
-i 在删除前询问是否确定
-f 强制删除,忽略不存在的文件
6.移动: mv 源文件 目标文件
-f 强制移动,如果已经存在直接覆盖
-i 如果目标文件存在,询问是否覆盖
-u 若目标文件存在,当原文件比较新的时候才更新
7.文件的压缩: gizp
常用参数:
-c 将压缩的数据输出到屏幕上
-# 压缩等级,-1最快,但是压缩比最差,-9最满,但是压缩比最好,一般-6
-v 可以显示出源文件/压缩文件的压缩比等信息
解压缩: gzip -d 文件名
#另一种压缩方式:bzip2
常用参数:
-z 进行压缩
-k 保留源文件
解压缩: bzip2 -d 文件名
8.打包命令: tar
由于上述的压缩命令只能单一的压缩文件,而不同于Windows里面对文件夹的压缩,所以如果要对一个文件夹进行压缩的话,首先必须打包。
A.常用参数:
-c:新建打包文件,可搭配 -v 来查看过程中被打包的文件名
-t:查看到打包文件的内容
-x:解打包或解压缩的功能
-v:在压缩/解压缩的时候将文件名列举出来
-C:解压到特定的目录
-j:通过bzip2的支持进行压缩/解压缩,文件名最好为*.tar.bz2
-z:通过gzip的支持进行压缩/解压缩,文件名最好为*.tar.gz
-f:后面要接被处理的文件名
-P:保留备份数据的原本权限与属性,用于备份
-p:保留绝对路径,允许备份数据中含有根目录
B.一般综合使用的3种方式:
压缩: tar -jcv -f *.tar.bz2
查询: tar -jtv -f *..tar.bz2
解压缩:tar -jxv -f *.tar.bz2 -C clounmname
9.其他常用命令
A.标准输入输出的重定向:<输入方 >输出方
cat命令 : cat filename表示读取文件,也就是从文件输出数据并输出到屏幕上
cat从键盘读取数据,并且输出到屏幕
cat > filename从键盘输入,并且输出到文件中(会无条件的覆盖已有的文件)
以 ctrl + d 来结束输入
防止覆盖已有的文件:
启用该设置:set -o noclobber
禁用该设置:set +o noclobber
使用追加标准输出:可以向某个文件的末尾添加新的内容
cat filename1 >> filename2
使数据消失,同时不改变文件的权限:
将数据重定向至 /dev/null
eg: cat /dev/null > filename 将该文件内容清空
B.程序的挂起:ctrl + z 阻止程序的运行
移动至前台运行: fg 作业编号
终止后台程序:
kill命令的使用
kill -9 终止所有可以终止的程序
kill %1 终止相应作业编号的程序
kill PID 终止相应PID的作业编号
ps 查看作业的PID
jobs 显示当前会话的作业状态
改变文件属性与权限:
主要会使用到的有3个命令:
- chgrp:改变文件所属用户组
- chown:改变用户的拥有者
- chmod:改变文件的权限
A.改变用户组和拥有者的方法十分简单:命令 用户组/拥有者 文件名。当改变的为文件时加上-R参数即可。
B.权限的改变有2种方式:数字型和符号型
#数字型就是利用2进制的加法,举几个例子就简单明了了:
-rwxrwxrwx: chmod 777 文件名
-r--r--r--: chmod 444 文件名
-r-xr--rwx: chmod 547 文件名
#符号型主要是利用+ - = 这3个运算来进行的
eg: chmod u=rwx,g=rx,o=rx 文件名
比较推荐数字型吧,使用方便简单。