linux 环境下的文件管理

###linux系统结构###
linux是一个倒树型结构,最大的目录名称叫“/” (根目录)

Linux系统一般有4个主要部分:

   https://blog.csdn.net/hguisu/article/details/6122513(详细的介绍linux的结构)

内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。

 linux内核

内核是操作系统的核心,具有很多最基本功能,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。

Linux 内核由如下几部分组成:内存管理、进程管理、设备驱动程序、文件系统和网络管理等。

linux 的shell

实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核。不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序。Shell编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。

Linux提供了像MicrosoftWindows那样的可视的命令输入界面--X Window的图形用户界面(GUI)。它提供了很多桌面环境系统,其操作就像Windows一样,有窗口、图标和菜单,所有的管理都是通过鼠标控制。GNOME

每个Linux系统的用户可以拥有他自己的用户界面或Shell,用以满足他们自己专门的Shell需要。

同Linux本身一样,Shell也有多种不同的版本。主要有下列版本的Shell: Bourne Shell:是贝尔实验室开发的。

linux文件系统

Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件、目录、软连接及文件保护信息等都存储在其中。

https://baike.so.com/doc/6950296-7172697.html(linux系统与Windows系统对比,讲的挺好的)

        


###linux系统中的二级目录###

/bin        ##二进制可执行文件,系统常规命令
/boot        ##启动目录,存放系统自动启动文件,内核,初始化程序
/dev        ##系统设备管理文件
/etc        ##大多数系统配置文件存放路径
/home        ##普通用户家目录
/lib        ##函数库
/lib64/        ##64位函数库
/media          ##临时挂载点    
/mnt        ##临时挂载点
/run        ##自动临时设备挂载点
/opt        ##第三方软件安装路径
/proc        ##系统硬件信息和系统进程信息
/root        ##超级用户家目录
/sbin        ##系统管理命令,通常只有root可以执行
/srv        ##系统数据目录
/var        ##系统数据目录
/sys        ##内核相关数据
/tmp        ##临时文件产生目录
/usr/        ##用户相关信息数据



###文件管理命令###
###1.文件建立###
touch    filename
注意:
    touch不但可以建立文件也可以修改文件的时间戳
    时间戳分为:
    atime:文件内容被访问的时间标识
    mtime:文件内容被修改的时间标识
    ctime:文件属性或文件内容被修改的时间标识

###2.目录建立###
    mkdir    directory
    mkdir -p dir1/dir2/dir3
    -p建立递归目录时,当上层目录不存在自动建立    

###3.文件删除###
    rm file
    rm -f file    -f=force 标示强制删除不提示

###4.目录删除###
    rm -r    directory    -r标示递归删除,也就是删除目录本身和里面的所有内容
    rm -r -f dir        删除目录不提示
    rm -rf dir        在命令参数使用过程中,-a -b -c =-abc =-bac ,顺序是不需要注意的。
    rm -fr dir

   



###5.编辑文件###
1.gedit    
    gedit file        ##必须有图形

2.vim
    vim file -->按[i]进入insert模式-->书写内容-->按[esc]退出insert模式-->:wq退出保存

示例:
    vim hello.c
    #include<stdio.h>
    main()
    {
        printf("hello,world\n");    
    }
:wq
    yum install  gcc -y     ##安装gcc编译器
    gcc hello.c -o hello
    ./hello            ##执行
    hello world

###vim异常退出###
当vim异常退出时会生成.file.swp文件

当再次打开此文件时会出现以下情况:
         file name: ~kiosk/Desktop/hello
          modified: YES
         user name: kiosk   host name: foundation0.ilt.example.com
        process ID: 31820
    If this already, delete the swap file ".hello.swp" <<<此文件中存放大是未保存的数据

Swap file ".hello.swp" already exists!
[O]pen Read-Only, (E)dit anyway, (R)ecover, (D)elete it, (Q)uit, (A)bort:
    只读打开        继续编辑      恢复数据  删除swap文件  退出    退出

无论按[O] (E) (R) (Q) (A) 任何一个都不会删除.swp文件
那么再次打开hello文件是还会出现以上界面直到按(D),.swp文件被删除
vim恢复正常工作

###6.文件的复制###
cp    源文件           目的地文件 

   
cp -r    源文目录       目的地目录
cp      源文件1 源文件2    目的地目录    ##目的地目录必须存在
cp -r     源目录1 源目录2       目的地目录    ##目的地目录必须存在

###7.文件移动###
mv     源文件           目的地文件    ##重命名
mv    源目录           目的地目录    

注意:
相同磁盘的文件移动只是一个重明名过程
不同磁盘的文件移动是复制删除过程

###8.文件查看###
cat      file        ##查看文件的全部内容
cat -b    file        ##-b显示行号

less    file        ##分页浏览


用法:
上|下            ##逐行移动
pageup|pagedown        ##逐页移动
/关键字            ##高亮显示关键字,n向下匹配,N向上匹配
v            ##进入vim模式 在vim模式中按:wq 退回到less模式
q            ##退出


###9.文件的寻址###
1.文件的地址分为:
    相对路径:
        相对与当前系统所在目录的一个文件名称的简写,
        此名称省略了系统当前所在目录的名称
        此名称不以“/”开头
        此名称在命令执行时会自动在操作对象前加入“PWD”所显示的值
        
    绝对路径:
        绝对路径是文件在系统的真实位置
        此命令是以“/”开头的
        此命令在命执行时系统不会考虑现在所在位置的信息
注意:
    当操作对象是 对象1  空格  对象2  时,
    这两个对象之间没有任何关系

####10.自动补齐####
<TAB>
    系统中的<TAB>键可以实现命令的自动补齐
    
    可以补齐系统中存在的命令,文件名称,和部分命令的参数
    当一次<TAB>补齐不了时代表以此关键字开头的内容不唯一
    可以用<TAB>X2来列出所有以此关键字开头的内容


###11.关于路径的命令####
1.显示路径
    pwd

2.切换路径
    cd 目录名称    ##进入到指定目录中
    cd -        ##当前目录和当前目录值前所在目录之间的切换
    cd ~        ##进入当前用户家目录
    cd ~user     ##进入user家目录
    cd ..        ##进入当前目录的上级目录

3.查看
    ls
    ls -l    file    ##文件属性
    ls    dir    ##目录中保函的内容
    ls -d    dir    ##目录本身
    ls -a    dir    ##所有文件保函隐藏的
    ls -S    dir    ##查看并且按照大小排序

    
4.文件查看
    cat        ##输出文件全部内容
    less        ##分页浏览
    head     file    ##查看文件前10行
    head -n 3 file    ##查看文件前3行
    tail     file    ##查看文件后10行
    tail -n 3 file    ##查看文件后3行
    tail -f    file    ##监控文件后10行内容的变化

   

5.文件大小统计
    wc
    wc -l    ##行数
    wc -w    ##单词数
    wc -m    ##字符数
    wc -c    ##字节数

 


####12.系统中历史的调用####

history            ##查看历史
history -c        ##清空当前环境中的历史
!数字            ##调用此行历史比如"!5"时执行历史中地5条命令
!test            ##执行以test关键字开头的最近一条历史
ctrl +r +关键字        ##调用历史中最近一条含有此关键字的历史
示例:
(reverse-i-search)`':test
(reverse-i-search)`test': sh test.sh 10        ##会调用最近一条命令中含有test字符的历史



####13.在系统中获得帮助####
1.查看命令大用途
whatis 命令    ##查看命令的用途

2.查看命令的用法
命令 --help    ##查看命令的基本用法,适用于多数命令
[]        ##标示选项可以加也可以不加
...        ##标示选项加入的个数任意
<>        ##标示选项是必须要加入的
Userage:    ##标示命令用法
Opetions:    ##对参数的作用做说明


3.man查看命令或文件的说说明手册
man     命令
man 5     文件
man的级别
1    #命令
2    #系统调用接口
3    #函数库调用接口
4    #特殊设备文件
5    #系统配置文件
6    #游戏规则说明
7    #包说明
8    #系统管理命令
9    #内核调用规则


man的基本用法
上|下        ##逐行查看
pgup|pgdn    ##分页查看
/关键字        ##高亮显示关键字,n向下匹配,N上向匹配
:q        ##退出

man -k    字符串    ##下看当前字符串在系统中拥有的man的级别

/usr/share/doc    ##系统中所有安装过的软件的帮助文档

####14.系统中的通用配置符号#####
*        ##匹配0到任意字符
?        ##匹配单个字符
[[:alpha:]]    ##单个字母    
[[:lower:]]    ##单个小写字母
[[:upper:]]    ##单个大写字母
[[:digit:]]    ##单个数字
[[:punct:]]    ##单个符号
[[:space:]]    ##单个空格
[[:alnum:]]    ##单个数字或字母

[1-9]        #1位,这位是1-9的任意数字
[!3-5]        #1位,不是3-5的数字
[^3-5]        #1位,不是3-5的数字
[a-z]        #1位,a-z的任意字母
{1..3}        #3个,1 2 3
{1,4,7}        #3个1,4,7这三个数

~        #当前用户家目录
~username    #指定用户的家目录
~+        #当前目录
~-        #进入当前目录之前所在目录(olddir)
 

猜你喜欢

转载自blog.csdn.net/zhangyubo114285/article/details/81116205