1.在Linux系统下,常见的三种类型:
文件(用-表示);目录(类似win下的文件夹)(用d表示);连接(类似win下的快捷方式)(用l表示)
如-rw-rw-r--. 1 beifeng beifeng 65 Sep 28 12:15 hive-select-log.sql
第一部分:-rw-rw-r--。十个字符,代表不同的意义。- rw- rw- r--
第一个字符-:表示的是文件的类型
后面的九个字符,分为三组,表示此文件针对不同用户的权限关系。
为什么是三组?因为一个文件对用户来说,三个部分:拥有者 rw-; 所属组 rw-; 其他人 r--。
第二部分:beifeng beifeng
第一个字符串表示的是,文件拥有者,beifeng
第二个字符串表示的是,文件所属者,beifeng
65表示文件大小,如果是文件夹则表示该文件夹下有多少个文件。
Sep 28 12:15表示文件创建日期
hive-select-log.sql表示文件名
2.文件权限
可读 r
可写 w
可执行(脚本,比如shell脚本) x
特殊字符 -:表示没有任何权限
权限数字表示方法:
2^2 4 R; 2^1 2 W; 2^0 1 X
所以rw-可表示为6
rw-rw-r--可表示为664
3.文件的归属
拥有者 owner u
属于组 group g
其他人 other o
4.man cmdName
命令行来说,自动补全功能,Tab键
5.如何设置文件对不同用户的权限,需要使用root用户:chmod 命令,即change mode
eg: -rw-rw-r-- 1 beifeng beifeng 65 Sep 28 12:32 hive-select-log.sql
需求:对同组用户来说,仅仅可读;对于其他用户来说,既不可读也不可写。
# chmod g-w hive-select-log.sql
# chmod 0-r hive-select-log.sql
将权限修改回去,使用数字形式:
# chmod 664 hive-select-log.sql
针对目录设置权限,目录中的文件都需要同样的权限设置:
# chmod -R 664 /opt/softwares
6.文件拷贝
cp 文件名 /目标目录。如:cp hive-select-log.sql /home
7.改变文件拥有者和所属组
命令:改变拥有者 chown
# chown 改变后的拥有者名 /目录加文件名
如 # chown beifeng /home/hive-select-log.sql
改变所属组 chgrp
如 # chgrp beifeng /home/hive-select-log.sql
针对目录,改变目录下所有文件拥有者和所属组:
# chown -R beifeng /opt/softwares
案例:将/home/hive-select-log.sql拥有者和所属组设置为senior用户和senior组:
# chown senior:senior /home/hive-select-log.sql
8.文件创建
1)使用touch命令。 touch 文件名
2)使用vi或vim方式。vi test.txt(如果没有就会创建文件)
9.对文件内容进行追加:
echo 'xxx' >> text.txt
10.编辑文件内容:vi 文件名/vim 文件名
在vi查看模式下的快捷键:
dd:表示删除光标所在行的内容
ZZ:表示的是保存文件内容
x:表示将光标出的字符给删除
o:表示在光标的下一行进行插入内容
11.查看文件内容的常见几种方式:
cat:查看全部内容,适合内容较少的文件
more:翻页查看,适合内容较多的文件
tail:查看末尾几行的内容,通常与 -f参数连用,适合查看服务实时动态日志信息。如 tail -f xxx.log;tail -200f yyy.log(查看最后200行)
head:查看文件开头几行内容
12.创建目录: mkdir 目录名
创建多级目录:mkdir -p ~/data/dfs/tmp
13.文件拷贝,移动,重命名
拷贝语法:cp source dest
dest:文件名称,可以是目录
1)拷贝一个文件到一个目录中去:cp test.txt test-dir
2)拷贝一个文件的内容值一个文件中(新文件):cp test.txt cp-test.txt
3)拷贝一个目录到另一个目录:cp -r test-dir test-dir2
移动或重命名语法:mv src dest
如果src和dest在同一个目录下就是重命名,
如果src和dest不在同一目录下,或者src是文件,而dest是目录,就是移动。
14.文件的删除:rmdir test-dir
注意删除的目录必须是空目录,不是空目录的话可以使用 rm -fr src。使用的时候,src最好是绝对路径,确定好以后在删除。
15.链接(类似win的快捷方式)
软连接soft link
硬连接hard link
区别:删除链接时,是否会删除源文件
语法:创建一个软连接:ln -s 源文件名 连接名
如: ln -s readme.txt rm.txt
16.搜索文件
语法:find ~/ -name filename
find ~/ -name read\*(用于不知道文件名,只记得以read开头时的搜索)