linux文件目录结构
Linux 是以树形目录结构的形式来构建整个系统的
命令行输入:/tree
查看
常用指令
目录路径
在 Linux 里面使用 . 表示当前目录,. . 表示上一级目录(以 . 开头的文件都是隐藏文件,所以这两个目录必然也是隐藏的,你可以使用 ls -a 命令查看隐藏文件)
1、进入上一级目录
cd..//进入上层目录
2、进入你的 home 目录:
cd ~
//或者cd /home/<你的用户名>
3、查看当前路径
pwd
4、区分绝对路径与相对路径
cd /usr/local/bin //绝对路径
cd . . //相对路径
假设我们进入了bin目录,现在要切换至local目录
cd /usr/local/bin //绝对路径
cd .. //相对路径
Linux 文件的基本操作
新建
1、新建空白文件
touch test
2、新建目录
- 创建名为“ mydir ”的空目录:
mkdir mydir
- 使用 -p 参数,同时创建父目录(如果不存在该父目录)
mkdir -p father/son/test1
- 若当前目录存在一个 test 文件夹,则 touch 命令,则会更改该文件夹的时间戳而不是新建文件。
复制
1、复制文件
- 使用 cp 命令(copy)复制一个文件到指定目录。
将之前创建的 test 文件复制到 /home/shiyanlou/father/son/test1 目录中:
cp test father/son/test1
2、复制目录
需要加上 -r 或者 -R 参数,表示递归复制
注意-r和-R的区别
-r只复制当前文件夹,不包括文件夹的内容
-R递归复制所有内容
删除
直接删除文件,可以使用 -f 参数强制删除:
rm -f test
删除目录(谨慎)
rm -rf family
移动文件与文件重命名
1、重命名
mv xx xx
2、移动文件
mv xx xx
查看文件
1、使用 cat,tac 和 nl 命令查看文件
前两个命令都是用来打印文件内容到标准输出(终端),其中 cat 为正序显示,tac 为倒序显示。
加上 -n 参数显示行号:
cat -n passwd
2、使用 more 和 less 命令分页查看文件
3、使用 head 和 tail 命令查看文件
它们一个是只查看文件的头几行(默认为 10 行,不足 10 行则显示全部)和尾几行。
举例:有一个文件共有100行内容,请取出第50行内容
方法1
head -n50 test > tmp # 将前50行装入临时文件 tmp
tail -n1 tmp # 得到中间行
方法2
head -n50 test | tail -n1
关于管道 管道是一种古老的 “进程间通信” 方式. 在 Linux 指令中可以使用 | 作为管道标记
4、查看文件类型
file xx
说明这是一个可执行文件,运行在 64 位平台,并使用了动态链接文件(共享库)
5、ls 指令
对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息
●-a列出目录下的所有文件,包括以.开头的隐含文件。
●-d将目录象文件-样显示,而不是显示其下的文件。 如: Is -d指定目录
●-k以k字节的形式表示文件的大小。Is -alk指定文件
●-|列出文件的详细信息。
●-r 对目录反向排序。
●-t以时间排序。
●-R 列出所有子目录下的文件。(递归)
文件打包与压缩
常用的压缩包文件格式。
在 Windows 上最常见的不外乎这两种 .zip,.7z 后缀的压缩文件。而在 Linux 面常见的格式除了以上两种外还有 .rar,.gz,.xz,.bz2,.tar,.tar.gz,.tar.xz,*.tar.bz2,
简单介绍如下:
1、zip 压缩打包程序
- 使用 zip 打包文件夹
zip -r -q -o shiyanlou.zip /home/shiyanlou/Desktop
- 设置压缩级别为 9 和 1(9 最大,1 最小),重新打包:
$ zip -r -9 -q -o shiyanlou_9.zip /home/shiyanlou/Desktop -x ~/*.zip
$ zip -r -1 -q -o shiyanlou_1.zip /home/shiyanlou/Desktop -x ~/*.zip
- du 命令分别查看默认压缩级别、最低、最高压缩级别及未压缩的文件的大小:
$ du -h -d 0 *.zip ~ | sort
h, --human-readable(顾名思义,你可以试试不加的情况) d, --max-depth(所查看文件的深度)
- 、创建加密 zip 包
使用 -e 参数可以创建加密压缩包:
$ zip -r -e -o shiyanlou_encryption.zip /home/shiyanlou/Desktop
2、使用 unzip 命令解压缩 zip 文件
- 将 shiyanlou.zip 解压到当前目录:`$ unzip shiyanlou.zip
- 使用安静模式,将文件解压到指定目录:
$ unzip -q shiyanlou.zip -d ziptest
上述指定目录不存在,将会自动创建。 - 如果你不想解压只想查看压缩包的内容你可以使用 -l 参数:
$ unzip -l shiyanlou.zip
- 使用 -O(英文字母,大写 o)参数指定编码类型:
unzip -O GBK 中文压缩文件.zip
3、tar打包工具 - 创建一个 tar 包:
$ cd /home/shiyanlou $ tar -P -cf shiyanlou.tar /home/shiyanlou/Desktop
上面命令中,-P 保留绝对路径符,-c 表示创建一个 tar 包文件,-f 用于指定创建的文件名,注意文件名必须紧跟在 -f 参数之后,比如不能写成 tar -fc shiyanlou.tar,可以写成 tar -f shiyanlou.tar -c ~。你还可以加上 -v 参数以可视的的方式输出打包的文件。
- 解包一个文件(-x 参数)到指定路径的已存在目录(-C 参数)
$ mkdir tardir
$ tar -xf shiyanlou.tar -C tardir
- 只查看不解包文件 -t 参数:
$ tar -tf shiyanlou.tar
- 使用 gzip 工具创建 *.tar.gz 文件为例来说明。
①我们只需要在创建 tar 文件的基础上添加 -z 参数,使用 gzip 来压缩文件:$ tar -czf shiyanlou.tar.gz /home/shiyanlou/Desktop
②解压 *.tar.gz 文件:$ tar -xzf shiyanlou.tar.gz
总结:
常用命令:
zip:
打包 :zip something.zip something (目录请加 -r 参数)
解包:unzip something.zip
指定路径:-d 参数
tar:
打包:tar -cf something.tar something
解包:tar -xf something.tar
指定路径:-C 参数
date 命令
date 指定格式显示时间: date +%Y:%m:%d
date 用法:date [OPTION]... [+FORMAT]
-
在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记
%H : 小时(00…23)
%M : 分钟(00…59)
%S : 秒(00…61)
%X : 相当于 %H:%M:%S
%d : 日 (01…31)
%m : 月份 (01…12)
%Y : 完整年份 (0000…9999)
%F : 相当于 %Y-%m-%d -
时间戳
时间->时间戳:date +%s
时间戳->时间:date -d@1508749502
Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的午
夜)开始所经过的秒数,不考虑闰秒。
使用 yum 命令
yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat,Centos等发行版上, 方便我们方便的安装第三方程序。
- 查看软件包列表
yum list | grep [软件包关键字] # 注意, 最好要加上 grep, 否则罗列的内容会非常多, 导致机器很卡.
- 安装软件包(需要管理员权限)
yum install [软件包名字]
- 卸载软件包(需要管理员权限)
yum remove [软件包名字]
注意事项
yum 所有的命令必须保证网络是联通情况下, 才能使用. yum install / yum remove 必须具备管理员权限(root
用户). 可以使用 ping www.baidu.com 来检测网络的畅通情况