Linux系统下文件和目录的基本操作(转载)

原文出处:https://blog.csdn.net/weixin_41476978/article/details/79702638#comments

 

1.对Linux系统的认识
 

linux指的是操作系统中的内核

我们所说的操作系统是linux的内核+GNU组织的软件  GNU/linux
 

Linux确实存在,许多人都在使用它,但它仅仅是所用系统的一部分。Linux是内核:它是为你运行的其他程序分配计算机资源的程序。

内核是操作系统的基本部分,但是它自己并无用处;它只能在完整的操作系统框架下才能发挥作用。Linux一般和GNU操作系统一起使用:

整个系统基本上就是GNU加上Linux,或叫GNU/Linux。所有被叫做“Linux”的发行版实际上是GNU/Linux发行版。

 

内核即管理整个操作系统的核心,犹如人的大脑发挥着至关重要的作用
linux是一个倒树结构
linux之中的所有东西都是文件的形式
这些文件都存在于系统顶级目录 "/“ 也就是根目录(见下图)

 

 

 

根目录下的二级目录对应的功能如下:

 

/bin               二进制可执行文件也就是系统命令
/sbin             系统管理命令存放位置
/boot             启动分区,负责系统启动
/dev              设备管理文件
/etc               大多数系统管理文件
/home           普通用户的家目录
/lib                32位系统库文件存放位置
/lib64            64位系统库文件存放位置
/media           系统临时设备挂载点                                                                                 
/mnt              系统临时设备挂载点
/run               系统临时设备挂载点
/opt               第三方软件安装位置
/proc             系统信息
/root              超级用户家目录
/srv,/var     系统数据
/sys              系统管理,主要是关于内核的
/tmp             系统临时文件存放位置
/usr              系统用户相关信息数据及用户自定义软件存放位置
2.文件的路径

(1)绝对路径

文件在系统中的真正位置,以 "/"开头。  例如:/etc/abrt/abrt.conf
(2)相对路径
文件相对与当前位置的一个简写,其名字不会以"/"开头,名字会自动添加pwd的值。 例如:westos/linux_class1
3.文件的管理
(1)建立文件
touch  file   ## 创建一个名为file的文件,touch的本质是修改文件的时间戳
(2)建立目录
mkdir test ## 创建一个名为test的目录
-p ##上级目录不存在时自动建立 
(3)删除文件或目录
rm -f file ##强行删除文件不提醒  f是force的缩写
rm -rf  目录 ##强行删除目录  -r 表示递归,就是目录本身和里面的所有内容
-rf 和-fr 效果相同
(4)查看文件内容
cat file   ##文件内容查看命令
(5)复制文件或目录
cp file1 file2 ##把file1复制到file2
cp file file1 file2 ... directory  ##把file  file1 file2 ... 复制到 directory中
cp file test ##建立test文件模板为file
cp -r directory direcotry1 ##复制目录
(6)移动文件或目录
mv file directory ##把file移动到directory中
mv 存在文件 不存在文件 ##重命名已存在的文件
mv westos/linux  .  ##把westos的linux移动到当前位置,"."表示当前系统所在位置
(7)列出目录或文件的信息
ls ##如果后面没有目标那么默认目标为当前目录
ls direcory|filename ##列出文件或目录内容

 

 

 

ls -d direcotry ##列出目录本身
ls -l filename|directory ##列出文件或目录里面内容的属性
ls -ld directory ##列出目录本身属性
ls -a ##显示目录中的所有内容,包括以"."开头的隐藏文件
ls -R ##递归显示目录中的内容

 

(8)文件目录的切换

cd directory ##切换到指定的目录

cd - ##切换到工作目录到之前的目录

cd ~ ##切换到家目录

cd ~username ##切换到指定用户的家目录

cd .. #切换到上一级目录


 

 

小结: ~ 当前用户的家目录
          ~username 指定用户的家目录
          - 工作目录之前的目录
          .. 上一级目录
          .当前目录
(9)其他文件操作
file filename  ##查看文件类型

 

head             ##显示指定文件的前多少行
head -n 7 passwd     ##显示文件的前7行
 

tail            ##显示文件的后多少行

tail -n 5 passwd     ##显示文件的最后5行
less            ##分页浏览

 

wc            ##统计文件的字数,字符数,字节数
wc -l            ##行数
wc -m            ##字符数
wc -c            ##字节数
wc -w            ##字数

 

4.vim方式编辑文件

(1)vim filename ##进入到命令模式,命令模式无法编辑文件

(2)按"i"进入插入模式

 

(3)如果完成编辑按"esc"退出插入模式,

(4) 输入":wq"完成编辑并保存退出。

 

 

(5) vim  ##直接执行vim操作 在文件的编写结束之后需要 :wq filename
(6)vim filename 如果文件名字不存在则直接自动新建
(7)vim的退出模式
:q 当用vim打开文件但没有对字符作出任何操作时可直接退出
:q! 当用vim打开文件并对字符作操作,放弃所有操作推出
:wq 保存退出
:wq! 强行保存退出,对超级用户及文件所有人生效

 

5.正则表达式

*                   ##匹配0到任意字符

?                 ##匹配单个字符

[[:alpha:]]     ##匹配单个字母

[[:lower:]]     ##匹配单个小写字母

[[:upper:]]    ##匹配单个大写字母

[[:digit:]]      ##匹配单个数字

[[:alnum:]]   ##匹配单个数字或字母

[[:punct:]]    ##匹配单个符号

[[:space:]]    ##匹配单个空格

例:建立文件然后使用通配符删除

 

{ } 表示不存在的或者存在的
{1..9}          ###1-9
{a..f}          ###a-f
{1,3,5}         ###135
{a,c,e}         ###a c e
{1..3}{a..c}    ###1a 2a 3a 2a 2b 2c 3a 3b 3c
touch westos{1..3}{a..c}共建立了9个文件

 

[ ] 表示存在的
[a-C]           ###aA bB cC
[a-c]           ###aA或者bB或者c
[1-3]           ###1或者2或者3
[145]           ###1或者4或者5
[^abc]|[!abc]   ###除了a并且除了b并且除了c

 

posted @ 2018-11-14 15:10  青青子衿J  阅读(185)  评论(0编辑  收藏  举报