列出目录下的内容(list):ls list
ls -l 以长列表方式列出 =ll
ls -a 列出隐藏文件,包括.和…
ls -A 列出隐藏文件,不包括.和…
ls -ld–>ll -d 查看指定目录.
ls -r 逆序列出
ls -lh 显示目录或文件大小
ll -i 显示文件索引节点号(inode)。一个索引节点代表一个文件,在linux中保存在磁盘分区中的文件都给它分配一个编号,称为索引节点号inode。
1.
第一个字符:linux的文件类型:
- 普通文件,类似于Windows的记事本 nano cat rm
d 目录文件,类似于文件夹 cd
l link,链接文件 软连接
c 字符设备文件,串行端口设备,顺序读写,键盘
b 块设备文件,可供存储的接口设备,随机读写,硬盘
p 管道文件,用于进程间的通信
s 套接字文件,通常用于网络上的通信。可以启动一个程序来监 听客户端的要求,客户端可以通过套接字来进行数据通信
2.
2-11权限标识位:rwx (所属用户) r-x (所属组) r-x (其他用户) 扩展权限标识位 ./+
rwx rwx rwx .
权限标识符 rwx
所属用户标识位
所属组标识位
其他用户权限标识位
扩展权限标识位(没有) /+ 添加了扩展权限
3.
硬链接次数
4.
所属用户root 所属组 root
5.
大小 byte
6
创建时间(最后一次修改文件时间)
7.
文件名称
软连接和硬链接区别
在linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号inode。
(1)符号链接又叫软链接,和原文件不是一个文件,类似于window下的快捷方式,就是一种特殊的文件。
(例如Windows的快捷方式,如果原始文件被删除,所有指向它的符号链接也就都被破坏了。符号链接记录的是目标的path。符号链接可以跨越文件系统,也可以为目录建立。软链接有自己的inode,是linux特殊文件的一种,作为一个文件,它的数据是它所连接的文件的路径。
创建链接文件:ln -s 原文件 链接文件 2 .
(2)硬链接,在linux系统中多个文件名指向同一个索引节点称为硬链接。(只能引用同一文件系统中的文件。它引用的是文件在文件系统中的物理索引(也称为inode)。当移动或者删除原始文件时,硬链接不会被破坏,因为它所引用的是文件的物理数据而不是文件在文件结构中的位置。硬链接记录的是目标的inode(所有文件指向同一个inode节点)
touch 文件名 … :创建文件
ln 原文件 目标文件 :建硬链接
ln -s 原文件 目标文件 :创建软连接
nano 文件名 :编辑文件
cat 文件名 :查看文件
rm 文件 y :删除普通文件
rm- r 文件名 :删除目录文件
文件查找: find
find . -inum 12332
查找命令 查找范围 方式 具体对象
-name 指定名字查找
-inum
查看硬件时间:clock
查看硬件时间:hwclock
-w 硬件—>系统 硬件要和系统时间一样
-s 系统时间向硬件时间同步
查看日历:cal 1752 9
cal 查看当年当月的日历
cal 年份 查看一年日历
cal 月份 年份 查看当年当月的日历
cal -1 查看该月的日历
cal -3 查看前一个月,本月,下月的日历
创建文本命令:
touch创建普通文本文件
文件命名规则:
(1)不能使用/来当文件名,/是用来做根的,也是用来做路径分隔符的
(2)文件名不能超过255个字符
(3)区分大小写file File FILE fIle
(4)目录也是文件,在同一路径下,两个文件不能同名
创建多个普通文件:
方法1:touch 文件名1 文件名2 文件名3
方法2:touch {文件名1,文件名2,文件名3}
touch {1,2}{3,4}
touch abc{1…100}
stat查看文件的详细信息
touch不仅可以创建空文件,还可以改变文件的修改时间
atime access time 看了一下内容 cat
mtime modify time 文件内容被改变了,ctime也会发生改变
ctime change time 元数据被改变,重命名
mkdir 目录名 创建目录文件
-p parents 父目录
-v verbose 详细信息
tree
rm 删除文件,命令别名默认带-i,该选项用来提示用户进行交互。
-force,强行删除,不提示-f
-r recursive,递归删除来删除目录
cp复制文件: copy
- r 复制目录
-p 复制的时候保留文件原有的属性,时间戳等信息
-a==-rp 归档复制,常用于备份 (-rp)
单源复制: cp [OPTIoN]… [-T] SOURCE DEST
多源复制: cp [OPTIon]… SOURCE… DIRECTORY
cp [OPTION]… -t DIRECTORY SOURCE…
-i: 交互式复制,即覆盖之前提醒用户确认
f:强制覆盖目标文件:
r:递归复制目录:
d:复制符号链接文件本身,而非其指向的源文件
a:dR --preserve-all, archive, 用于实现归档
–preserv=
mode:权限
ownership: 属主和属组timestamps
时间戳context
安全标签xattr
扩展属性links
符号链接all
上述所有属性
如果DEST不存在:错误;如果DEST存在:
如果DEST是非目录文件:错误;
如果DEST是目录文件:分别复制每个文件至目标目录中,并保持原名:
mv移动文件: 等同Windows里面的剪切,移动之后原文件消失
-i 提示
-f 强制覆盖
查看普通文本文件命令
cat 连接并显示文件到标准输出
-n——对输出内容中的所有行标注行号。
-b——对输出内容中的非空行标注行号。
不带任何选项时,从标准输入接收输出到标准输出
tac 按行逆序显示文件,同cat
more 支持向后翻,在没有翻到最后一屏时支持向前翻,空格/k/回车
less 前后翻,用法同man,man手册就是用less命令打开的
head 查看文件前n行,默认是10行
-n 指定多少行
-LINE NUMBER 直接用行数作为选项
tail 查看文件后n行,默认是10行
-n 指定多少行
-f follow,查看文件后并不退出,滚动显示追加内容
/var/log/messages
cut 文本切割显示:
cut -d 指定分隔符 -f 指定第几列 被切割文件
: 1 /etc/passwd -d -f -c
root: x:0:0:root:/root:/bin/bash
bin: x:1:1:bin:/bin:/sbin/nologin
daemon: x:2:2:daemon:/sbin:/sbin/nologin
adm: x:3:4:adm:/var/adm:/sbin/nologin
-f 1,3第一列和第三列
-f 1-3第一列到第三列
-c 1-4 指定第一到第四个字符
指定分隔符的时候空格需要用单引号或双引号引起来
cut -d : -f 1-3 --output-delimiter=@ /etc/passwd
echo 回声 标准输入输出指令
$ 引用变量
$? 显示退出码
| 管道就是将前面命令输出作为管道后面命令的输入
|tee T型管道可以将前面命令的标准输出重定向到指定文本文件并将结果输出到终端
输入/输出重定向
1.重定向操作符——“>”、“>>”、“<”、“<<” 在Linux系统中 默认的输入设备(标准输入)是键盘 默认的输出设备(标准输出)是屏幕 利用重定向操作符可以重新定义命令涉及的默认的输入和输出设备对象,即重定向操作符可以将命令输入和输出数据流从默认设备重定向到其他位置。 重定向操作符本身不是一条命令,而是命令中附加的可改变命令的输入和输出对象的特殊符号, “>”、“>>”称为输出重定向操作符, “<”、“<<”称为输入重定向操作符。
FHS:filesystem hierarchy standard文件系统层级标准,定义了在类Unix系统中的目录结构和目录内容,即让用户了解到已安装软件通常放置于哪个目录下。
FHS采用树形结构组织文件。FHS文件系统层级图
文件系统:操作系统用于明确存储设备或分区上的文件的方法和数据结 xfs
linux层次化文件结构,倒树状结构文件结构
FHS filesystem hierarchy standard定义了两层规范,第一层是/下面的各个目录应该要放什么文件数据,
第二层则是针对/usr及/var这两个目录的子目录来定义。例如/var/log放置系统登录文件、/usr/share放置共享数据等等。
FHS 文件系统层级结构标准,规定了目录的类型和文件存放类型
FHS 文件系统层级结构
库文件:可以理解为许多程序运行使用相同的代码,并且这些库可以放在一个公共的位置上,以此减少运行程序时的大小。
映射文件:就是由一个文件到一块内存的映射。内存映射文件可以保留一个地址空间的区域,将物理存储器提交给此区域
内存文件映射的物理存储器来自一个已经存在于磁盘上的文件。
与时间有关的命令:
date 输出和更改日期时间:(软件、系统时间)
更改日期的格式 月日时分年.秒
date -s “” ‘’
date -s 只有root才能设置,其它只能查看
date -s 20160813 日期为20160813,时间为00:00:00
date -s 01:01:01 设置具体时间,不会对日期做更改
date -s “01:01:01 2016-08-13″ 设置全部时间
date -s “01:01:01 20160813″ 设置全部时间
date -s “2016-08-13 01:01:01″ 设置全部时间
date -s “20160813 01:01:01″ 设置全部时间
设置时间: timedatectl set-timezone Asia/Shanghai