1 系统目录结构
Linux操作系统里面最核心的一个目录,所以的文件和目录全部在它的下面,所以称为根目录。
/bin:是Binary的缩写,该目录下存放最常用的命令
/boot:目录下存放的是Linux使用一些核心文件,包括链接文件及镜像文件启动加载文件。
/dev:dev是Device,存放的linux的外部设备和设备驱动文件。
/etc:该目录下存放的是所有系统管理所需的配置文件和子目。/etc/rc.d系统配置文件和脚本。
/home:用户的家目录,在Linux中每个用户都有一个自己的目录,以用户的账号命名。(#代表root用户
:
普
通
用
户
)
/
l
i
b
/
l
i
b
64
:
这
两
个
目
录
存
放
的
是
系
统
的
动
态
链
接
共
享
库
。
类
似
W
i
n
d
o
w
s
D
D
L
文
件
/
m
e
d
i
a
:
系
统
会
自
动
识
别
一
些
设
备
,
识
别
后
L
i
n
u
x
会
把
识
别
的
设
备
挂
载
到
该
目
录
下
。
/
m
n
t
:
系
统
提
供
该
目
录
是
为
了
让
用
户
临
时
挂
载
别
的
文
件
系
统
。
/
o
p
t
:
该
主
机
提
供
安
放
软
件
所
设
置
的
目
录
。
(
第
三
方
软
件
/
p
r
o
c
:
是
一
个
虚
拟
目
录
是
系
内
存
映
射
,
可
以
直
接
访
问
它
了
获
取
系
统
信
息
,
该
目
录
的
在
内
存
里
,
直
接
可
以
修
改
里
面
的
某
些
文
件
。
/
r
o
o
t
:
系
统
管
理
员
的
用
户
家
目
录
。
/
s
b
i
n
:
存
放
系
统
的
是
系
统
管
理
员
使
用
的
系
统
管
理
程
序
。
/
s
r
v
:
存
放
一
些
服
务
启
动
之
后
的
提
取
数
据
。
/
s
y
s
:
存
放
的
是
硬
件
驱
动
的
相
关
信
息
。
/
t
m
p
:
系
统
用
来
存
放
一
些
临
时
文
件
。
/
u
s
r
:
用
户
的
应
用
程
序
和
文
件
。
/
u
s
r
/
b
i
n
:
系
统
用
户
使
用
的
应
用
程
序
(
:普通用户) /lib/lib64:这两个目录存放的是系统的动态链接共享库。类似Windows DDL文件 /media:系统会自动识别一些设备,识别后Linux会把识别的设备挂载到该目录下。 /mnt:系统提供该目录是为了让用户临时挂载别的文件系统。 /opt:该主机提供安放软件所设置的目录。(第三方软件 /proc:是一个虚拟目录是系内存映射,可以直接访问它了获取系统信息,该目录的在内存里,直接可以修改里面的某些文件。 /root:系统管理员的用户家目录。 /sbin:存放系统的是系统管理员使用的系统管理程序。 /srv:存放一些服务启动之后的提取数据。 /sys:存放的是硬件驱动的相关信息。 /tmp:系统用来存放一些临时文件。 /usr:用户的应用程序和文件。 /usr/bin:系统用户使用的应用程序(
:普通用户)/lib/lib64:这两个目录存放的是系统的动态链接共享库。类似WindowsDDL文件/media:系统会自动识别一些设备,识别后Linux会把识别的设备挂载到该目录下。/mnt:系统提供该目录是为了让用户临时挂载别的文件系统。/opt:该主机提供安放软件所设置的目录。(第三方软件/proc:是一个虚拟目录是系内存映射,可以直接访问它了获取系统信息,该目录的在内存里,直接可以修改里面的某些文件。/root:系统管理员的用户家目录。/sbin:存放系统的是系统管理员使用的系统管理程序。/srv:存放一些服务启动之后的提取数据。/sys:存放的是硬件驱动的相关信息。/tmp:系统用来存放一些临时文件。/usr:用户的应用程序和文件。/usr/bin:系统用户使用的应用程序(普通用户使用)。/ usr/sbin:系统管理员使用的管理程序和系统守护程序。(#root用户使用)
/usr/src:存放的是内核原代码默认的放置目录 。/var:是不断扩充且经常修改的目录包括各种日志文件或者PID文件。
2 ls命令
ls:是List的缩写用于列出指定目录和文件,文件类型,属主,属组,权限,链接数,inode号,文件的创建和被修改时间。
ls的命令格式:ls 选项 文件或目录
ls命令参数选项及说明
-l:列出文件及目录信息
-a: 显示目录下的所有文件,包括以". "字符开始的隐藏文件
-d :列出目录本身而非目录内的文件.
-h:简明可读显示文件和目录大小,以K为单位。
-i:显示inode节点信息。
-t:按时间新旧排序
使用范例
#touch file1.txt file2.txt file3.txt
#mkdir dir1 dir2 dir3
#tree
dirf1 dir2 dir3
file1 file2 file3(3directories,3file)
#ls ( 不加参数的结果。显示所有文件和目录。
dir1 dir2 dir3 file1 .txtfile2.txt file3.txt
#touch .file4.txt(创建一个隐藏文件,在Linux系统中”.“(以.号开头的文件就是隐藏文件。
#ls -a(–a选项显示所有文件,特别是隐藏文件
dir1 dir2 dir3 file1.txt file2.txt file3.txt file4.txt
#ls -l( 显示详细信息,长格式列出目录下的文件类型,权限,链接数属主(组)及创建修改时间的信息
#ls -ld(查看目录本身
#ls -lt(按时间新旧顺序来显示
3.文件类型
ls -l命令查看当前目录下的文件时,共显示了9列内容
#ls -ld
drwxr-xr-x 2 root root 4096 oct 25 11:13 dir
第一位用来描述该文件类型。 d:表示该文件是目录。 -:表示该文件为普通文件。 l:表示该文件为链接文件(link file) b:表示该文件是设备块(block) c:表示文件为串行端口设备文件。 s:表示该文件为套件字文件socket用于进程之间的通信。
第二列:表示该文件占用的节点(inode). 第三列:文件的使用者。 第四列:文件的所属组。 第五列:表示该文件的大小。第6,7,8列:表示该文件最后一次被修改的时间(mtime) 第9列:表示文件名。
4.相对路径和绝对路径
路径:存放文件及目录的地方
绝对路径:/从根目录下开头写的目录路径是绝对路径。例如/etc/123 。/usr/local/mysql
相对路径:不以/根开头,则是从当前目录说起。例如:#cd /home#cd test
5.alias命令
功能说明:设置指令的别名。 语法格式:alias【别名】=【指令名称】利用alias可以把很长的命令变成易于记忆书写的命令。
alias lsl=‘ls -color=tty’ alias mv=‘mv -i’ alias ll='ls-l l- color=tty’如果想永久生效把设置的别名写入到/etc/bashrc 里面
删除alias别名
格式:unalias name #unalias pingm (取消指定的别名pingm的设置。
6.cd 命令
cd 用来切换目录 语法格式:cd 选项 参数
cd.:切换到当前目录
cd…切换到上一级目录。cd /var/log/:进入到指定目录下 cd -进入上一次所在目录(交互交替)cd~=cd 不加任何选项 ~表示当前用户的家目录#echo $home查看用户家目录。 cd后面只能是目录名,若是跟了文件名,则会报错
#cd /usr/local/lib
#pwd
/usr/local/lib
#cd.
#pwd
/usr/local/lib
pwd:用于显示当前所在目录
7.创建和删除目录 mkdir/rmdir
mkdir:用于创建目录 命令格式:mkdir[-m p] 目录名称
–m:选项用于指定要创建的目录权限。
#mkdir /tmp/test/123 ( 会报错
#mkdir -p/tmp/test/123(_p选项可以创建一大串级联目录,并且创建一个已经存在的目录不会报错
#ls /tmp/test
命令rmdir
ridir/remove directory 用于删除空目录,不能删除文件。rmdir 和mkdir具有相同的选项-P
#ls /tmp/test 123
#rmdir(用于删除空目录)
8.rm
rm常用选项
-r:删除目录时会询问是否删除
-f:表示强制删除,它不询问是否删除。
-rf:删除目录或文件
#mkdir -p/tmp/test/123
#rm -r/tmp/test/123
#rm /tmp/test/123/123
#rm -f/tmp/test/123/123
#rm -rf/tmp/test/123/123(-rf删除目录和文件不用询问。
9.环境变量
环境变量就是一个字符串变量,当输入命令的时候Linux会去查找PATH里面记录的路径。
which:用于查找某个命令的绝对路径
#which rmdir
/usr/bin/rmdir
10.cp命令
cp(copy) 复制的简写 命令格式:cp 选项 【原文件】 【目标文件】
cp的常用选项
-r:要复制一目录时必须加r选项,否则不能复制。
-i:复制一个已经存在的文件会询问是否覆盖。
#cp test1 test2
#mkdir123
#cp 123 .456
#cp -r123. 456
#ls -ld123. 456
11.mv命令
mv=move移动或重命名。 命令格式:mv [选项】 【源文件或目录】【目标文件或目录】
当目标文件是目录,如果该目录存在,则会把源文件或目录移动到该目录中。 如果不存在,则会把源目录重命名为给定的目标文件名。
当目标文件是文件时,如果该文件存在,则会询问是否覆盖。如果该文件不存在,则会把源文件重命名为给定的目标文件名。
#mkdir /tmp/test_mv
#cd /tmp/test-mv
#mkdir dira dirb
#ls
dira dirb
#mv dira dirc
#ls
dirb dirc(目标文件是目录dirc,并且dirc不存在于是把目录dira 重命名为 dirc
例如:目标文件是目录dirb,且dirb存在,则会把目录dirc移动到目录dirb里
#mv dirc dirb
#ls
dirb
#ls dirb
dirc
例如:mv filed filee 目标文件是文件filee且这个文件不存在,会把文件filed 重命名filee ,mv filee dirb命令更名后的文件filee移动目录dirb里
#touch filed
#ls
dirb filed
#mv filee dirg
#ls
dirg filee
#mv filee dirb
#ls
dirb
#ls dirb加粗样式
dirc filee
11.文档查看cat/more/less/head/tail
1cat文档
查看命令。cat后面可以不加任何选项,直接跟文件名
-n:查看文件时,把行号也显示到屏幕上
#echo’ 1111’>dirb/filee
#echo ‘2222’>> dirb/filee
#cat dirb/file
1111
2222
#cat -n dirb/filee
1 1111
2 2222
-A:显示所有的内容,包括特殊字符。
#cat -A dirb /filee
1111$
2222$
2 more命令
more:用于查看一个文件的内容,more 命令 文件名
more文件查找命令
空格:看下一屏
ctrl+d:向上翻屏 ctrl+F :向下翻屏 按Q退出。
3 less命令
less命令参数说明
/:查找字符串向后查找
?:向前查找字符串
J:向下移动
K:向上移动
空格:可以翻页
4 head 命令
head :用于显示文件前10行,后面直接跟文件名
-n:显示文件的行数。
#head /etc/passwd
#head -n /etc/passwd
5 tail 命令
tail 和head用于显示文件的最后10
-n:显示文件的最后几行
-f:可以动态查看文件的最后10行
#tail /etc/passwd
#tail -f /var/log/messages
#tail -n2 /etc/passwd
12 文档和目录权限chmod
chmod:(change mode)用于改变用户对文件/目录的读写执行权限。语法格式:【-R] x y z 文件名
在Linux系统中目录默认权限755 文件默认的权限644 权限代号 rwx r=4w=2 x=1 -=o
权限范围
u:目录或者文件的当前用户
g:当前用户组
o:除当前目录或文件使用者,群组之外的。
a:所有用户及群组(all)-:删除权限
例如:增加文件所有用户组可执行权限
#chmod a+x log2019.log
同时修改不同用户的权限
#chmod u g +w,o-x log2019.log
13 更该所有者和所属组
chown (change owner0命令可以改文件的所有者
语法格式:chown [R] 账号名:组名:文件名
- R: 改当前目录包括目录里的文件也全部更改。
- #mkdir dir2
- #useradd use1
- #touch dir2/test2
- #chow user1 dir2
- #ls -ld dir2(目录使用者已经有root改为user1
- chgrp命令
- chgrp命令可以更改文件是所属组
- 语法格式:chgrp [组名】 【文件名】
- #groupadd testgroup
- #mkdir /tmp/4-6
-#cd /tmp/4-6
#touch /test/
#chgrp testgroup test1
#ls -l test1
groupadd:增加一个用户组。 chgrp 可以更改目录的所属组。
15 umask
umask 用于改变文件的默认权限,其格式为umask xxx (xxx:代表3个数字
#umask(默认是0022)默认情况下目录的权限755,普通文件的权限是644
umask的值是可以自定义,比如设定 umask,在创建目录或者文件时,默认权限分别为:
rwxrwxrwx - - - - - - w- =rwxrwxr-x(目录权限
rw- rw-rw- - - - - - - w-=rw-rw-r - - (文件权限)r可读 w可写 x可执行的权限
#umask 002
#mkdir dir4
#ls -l test4
#touch test4
#ls -l test4(可以看到创建目录权限755,文件权限644