centos目录结构与Linux指令

centos目录结构与Linux指令

1、centos的目录结构

Linux所有的都是文件,万物皆文件

bin     ---- 命令,二进制存放的目录
boot    ---- 系统引导程序+系统的内核
dev     ---- 设备硬盘,光驱
etc     ---- 存储系统或者服务的配置文件
home    ---- 普通用的家目录,贫民窟
lib     ---- 库文件存放的目录
lib64   ---- 库文件存放的目录(64位)
media   ---- Linux识别的设备,比如u盘等挂在这个目录
mnt     ---- 临时的挂载点目录
opt     ---- 第三方的软件安装
proc    ---- 虚拟目录显示内存的信息(内核的信息)
root    ---- root家目录
run     ---- 放的启动的东西
sbin    ---- 超级命名,只有root用户才能用的命令
srv     ---- service的缩写,存放的是一些启动后需要的数据
sys     ---- 虚拟目录,内存信息
tmp     ---- 临时文件存放的位置
usr     ---- 存放用户的程序
var     ---- 存放经常变换的文件,比如日志等

2、文件系统常用的命令

1、pwd  显示当前所在的路径

# 解释:pwd =  print working directory 显示当前所在的目录
[root@localhost run]# pwd
/run
[root@localhost network-scripts]# pwd
/etc/sysconfig/network-scripts

2、cd  切换目录结构

cd 路径   去往指定路径
#绝对路径的方式
[root@localhost run]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# pwd
/etc/sysconfig/network-scripts

#相对路径的方式
[root@localhost home]# cd /etc
[root@localhost etc]# cd sysconfig/
[root@localhost sysconfig]# pwd
/etc/sysconfig

cd ~ 或者 cd /root 或者 cd    回到家目录
# 快速回到进入自己的家目录
[root@localhost sysconfig]# cd ~
[root@localhost ~]# pwd
/root
[root@localhost network-scripts]#cd /root
[root@localhost ~]# pwd
/root
[root@localhost network-scripts]# cd 
[root@localhost ~]# 

cd -    回到经过的上级路径
# 快速回到自己进过的目录
[root@localhost ~]# cd /etc/sysconfig/
[root@localhost sysconfig]# cd /bin
[root@localhost bin]# cd -
/etc/sysconfig

cd ../    回到上一级目录
[root@localhost lib]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# pwd
/etc/sysconfig/network-scripts
[root@localhost network-scripts]# cd ../
[root@localhost sysconfig]# pwd
/etc/sysconfig
[root@localhost sysconfig]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cd ../../
[root@localhost etc]# pwd
/etc
[root@localhost etc]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cd ../../../../../../../../../
[root@localhost /]# pwd
/

3、mkdir  创建目录文件夹

mkdir ---> make directory

[root@localhost /]# mkdir /myboy
[root@localhost /]# cd /myboy/
[root@localhost myboy]# pwd
/myboy

#用-p参数创建多级目录
[root@localhost /]# mkdir -p /boy/tank
[root@localhost /]# cd /boy/tank/
[root@localhost tank]# pwd
/boy/tank

#我们在创建目录的时候最好是用绝对路径

4、touch  创建文件

[root@200 zack]# touch boy.txt
[root@200 zack]# ls
boy.txt
[root@200 zack]# cd ~
[root@200 ~]# touch /myboy/zack/gg
[root@200 ~]# cd /myboy/zack
[root@200 zack]# ls
boy.txt  gg

#在linux里面不会通过后缀名来区分文件的类型,但是我们约定,你什么样的文件,就用什么后缀名,免得搞不清楚

5、ls  检查文件或者文件目录是否存在,并列出目录底下的文件及文件夹

ls -l  列出文件详细信息

ls -lt  创建时间最新到最老排序

ls -ltr 创建时间最老到最新排序

ls -a 表示查看当前文件夹底下的所有文件,包括隐藏文件

[root@200 zack]# ls
boy.txt  gg  girl

[root@200 zack]# ls -l
total 0
-rw-r--r--. 1 root root 0 Mar 24 16:20 boy.txt
-rw-r--r--. 1 root root 0 Mar 24 16:21 gg
drwxr-xr-x. 2 root root 6 Mar 24 16:40 girl

[root@200 zack]# ls -lt
total 0
drwxr-xr-x. 2 root root 6 Mar 24 16:40 girl
-rw-r--r--. 1 root root 0 Mar 24 16:21 gg
-rw-r--r--. 1 root root 0 Mar 24 16:20 boy.txt

[root@200 zack]# ls -ltr
total 0
-rw-r--r--. 1 root root 0 Mar 24 16:20 boy.txt
-rw-r--r--. 1 root root 0 Mar 24 16:21 gg
drwxr-xr-x. 2 root root 6 Mar 24 16:40 girl

[root@200 zack]# ls -a
.  ..  boy.txt  gg  girl

6、cat  查看文件信息的命令

# cat 是查看文件信息
[root@localhost oldboy]# cat /oldboy/oldboy.txt 
123
[root@localhost oldboy]# cat oldgirl.txt 
456
#查看多个文件的文件信息
[root@localhost oldboy]# cat oldboy.txt oldgirl.txt 
123
456

# 将文件中的内容读取出来,放入到另一个文件中
[root@localhost oldboy]# cat oldboy.txt oldgirl.txt  > jason.txt
[root@localhost oldboy]# cat jason.txt
123
456

7、echo 将信息输出

# 直接输出信息
[root@200 zack]# echo 'hello world'
hello world

# 将内容写入到文件中,> 是覆盖  >> 是追加
[root@200 zack]# echo 'hello world' > vicky.txt
[root@200 zack]# ls
a.py  boy.txt  gg  girl  vicky.txt
[root@200 zack]# cat vicky.txt
hello world
[root@200 zack]# echo 'hello world' > vicky.txt
[root@200 zack]# cat vicky.txt
hello world
[root@200 zack]# echo 'hello world' >> vicky.txt
[root@200 zack]# cat vicky.txt
hello world
hello world

8、cp  复制

语法:cp 参数(数量可选) 要复制的信息  复制到什么位置

cp 的参数
-r 进行递归复制
-p 拷贝是时候属性保存不变
-d 和链接相关的文件
-a == -drp

# 复制文件
[root@200 zack]# ls
a.py  boy.txt  gg  girl  vicky.txt
[root@200 zack]# cp /myboy/zack/a.py /myboy
[root@200 zack]# ls
a.py  boy.txt  gg  girl  vicky.txt
[root@200 zack]# cd ..
[root@200 myboy]# ls
a.py  zack

# 复制文件夹 -r 递归复制
[root@200 oldboy]# cp -r /myboy/zack /oldboy/
[root@200 oldboy]# cd ../
[root@200 ~]# ls
anaconda-ks.cfg  oldboy  py13
[root@200 ~]# cd /oldboy
[root@200 oldboy]# ls
oldgirl  zack

cp做备份:.bak

# 备份文件要是以.bak结尾
[root@200 myboy]# ls
a.py  zack
[root@200 myboy]# cp a.py a.py.bak
[root@200 myboy]# ls
a.py  a.py.bak  zack

 # 如果cp的时候,多个文件,会出现多次确定,如何避免
[root@localhost oldboy]# cp -r /etc/sysconfig/ /oldboy/oldgirl
cp: overwrite ‘/oldboy/oldgirl/sysconfig/ip6tables-config’? y
cp: overwrite ‘/oldboy/oldgirl/sysconfig/iptables-config’? y
cp: overwrite ‘/oldboy/oldgirl/sysconfig/cbq/avpkt’? ^C

#解决办法
[root@localhost oldboy]# \cp -r /etc/sysconfig/ /oldboy/oldgirl

9、mv 剪切

对文件或者文件夹进行剪切

语法:mv 要剪切的文件或者文件夹  移动到什么位置

#在根目录创建test文件夹,然后创建heihei.txt
[root@localhost oldboy]# mkdir /test
[root@localhost oldboy]# cd /test
[root@localhost test]# touch heihei.txt

# 将 /test/heihei.txt文件 剪切(移动)到/oldboy/shanghai/的文件夹,
[root@localhost test]# mv /test/heihei.txt  /oldboy/shanghai/
mv: cannot move ‘/test/heihei.txt’ to ‘/oldboy/shanghai/’: Not a directory

#创建/oldboy/shanghai文件夹
[root@localhost test]# mkdir /oldboy/shanghai
[root@localhost test]# mv /test/heihei.txt  /oldboy/shanghai/
[root@localhost test]# cd /oldboy/shanghai
[root@localhost shanghai]# ls
heihei.txt
#原来的/test/heihei.txt文件消失
[root@localhost shanghai]# cd /test
[root@localhost test]# ls

# 在linux系统没有重名名这个东西,我们可以用 mv 命令实现
[root@localhost oldboy]# ls
 lxx.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt  shanghai
[root@localhost oldboy]# mv lxx.txt lxxsb.txt
[root@localhost oldboy]# ls
lxxsb.txt  oldboy.txt  olddog  oldgirl  oldgirl.txt  shanghai

10、rm  删除

rm  文件

rm  -r  文件夹

rm  -rf  文件/文件夹       (强行删除不询问)

注意:不能使用rm -rf /*  会删除根下的所有文件

# 删除文件
[root@200 oldboy]# ls
ab.py  oldgirl  zack
[root@200 oldboy]# rm ab.py
rm: remove regular file ‘ab.py’? y
[root@200 oldboy]# ls
oldgirl  zack

# 删除文件夹
[root@200 oldboy]# rm oldgirl
rm: cannot remove ‘oldgirl’: Is a directory
[root@200 oldboy]# rm -r oldgirl
rm: descend into directory ‘oldgirl’? y
rm: remove directory ‘oldgirl/zack’? y
rm: descend into directory ‘oldgirl/girl’? y
rm: remove regular empty file ‘oldgirl/girl/a.txt’? y
rm: descend into directory ‘oldgirl/girl/zack’? y

# 强行删除文件夹/文件(不询问)
[root@200 oldboy]# rm -rf zack
[root@200 oldboy]# ls
[root@200 oldboy]# 

11、vim  编辑器

首先需要切换阿里的centos镜像源

要用vim首先需要安装

#命令:yum -y install vim 或者 yum install vim -y

vim编辑器有三种模式:正常模式、插入模式、命令模式

 

语法:vim 文件名

 进入正常模式,从正常模式进入插入模式输入i,o,a,I,O,A,R都可以,正常我们就使用i

进入插入模式后要退出到正常模式是按Esc,从正常模式到命令模式是按 

1、正常模式下的命令:

复制当前行:yy

粘贴:p

复制当前行及下一行:2yy

粘贴:p

删除:dd

删除当前行及下一行:2dd

撤回:u

光标移动到首行:gg

光标移动到最后一行:G

光标移动到第二行:2gg

2、插入模式

直接进入输入内容就行

3、命令模式下的命令

1、查找内容

:/关键字

2、取消高亮

:nohl

3、显示行号

:set nu

4、取消行号

:set nonu

5、没有修改下推出

:q

6、修改了,不想保存退出

:q!

7、保存并退出

:wq

如果发现vim不能按 i 进入编辑文件,可以在这个文件所在目录执行 ls -a

查看所有的文件,发现有 . 开头的文件 .swp 隐藏文件

执行删除命令就行:rm -rf .文件名.swp

 

posted @ 2020-03-24 20:34  Mr沈  阅读(281)  评论(0)    收藏  举报