linux系统结构及文件管理命令

                                      linux系统结构

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

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

                                  文件管理命令

一、文件的建立

touch file   (file为文件名)

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

二、目录的建立
    mkdir    directory   (directory为文件名)
    mkdir -p dir1/dir2/dir3   (-p建立递归目录时,当上层目录不存在自动建立)  

三、文件删除
    rm file
    rm -f file    -f=force (标示强制删除不提示)

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

五、编辑文件
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            ##执行

注意:
当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恢复正常工作

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

七、文件移动
mv     源文件           目的地文件    ##重命名
mv     源目录           目的地目录    

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

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

less    file           ##分页浏览

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

(截图file中的内容时我自己乱打的)

九、文件的寻址
1.文件的地址分为:
    相对路径:
        相对与当前系统所在目录的一个文件名称的简写,
        此名称省略了系统当前所在目录的名称
        此名称不以“/”开头
        此名称在命令执行时会自动在操作对象前加入“PWD”所显示的值


        
    绝对路径:
        绝对路径是文件在系统的真实位置
        此命令是以“/”开头的
        此命令在命执行时系统不会考虑现在所在位置的信息
注意:
    当操作对象是 对象1  空格  对象2  时,
    这两个对象之间没有任何关系
    豆角 茄子    ##这是2个对象
    豆角茄子    ##这是一个对象
    

    亲        ##动作是被系统执行的,不能作为名称出现
    “亲”        ##用引号的作用是把动作变成名称字符,这种方法叫引用

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

十一、关于路径的命令
(1)显示路径
    pwd

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

(图示为进入到boot目录中)

(图示为当前目录boot和当前目录值所在的目录/root/desktop之间的切换)

(图示为进入当前用户的家目录里)

(进入root家目录中)

(进入abrt目录的上级目录run)

(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    ##字节数

十二、系统中历史的调用                                                                                    

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


十三、在系统中获得帮助
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    ##系统中所有安装过的软件的帮助文档

十四、系统中的通用配置符号
*        ##匹配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/suifengOc/article/details/81097983