Linux文件管理

一、Linux文件管理类命令

1、pwd(print working directory):显示工作目录

        格式:pwd [OPTION]...  

            -L, –logical use PWD from environment, even if it contains symlinks(即使路径是链接也用pwd命令查看)目录连接链接时,输出连接路径

            -P, –physical avoid all symlinks(不打开链接)

        实例1:用 pwd 命令查看默认工作目录的完整路径

        [root@localhost ~]# pwd
        /root
        [root@localhost ~]#

        实例2:使用 pwd 命令查看指定文件夹

        [root@localhost ~]# cd /opt/soft/
        [root@localhost soft]# pwd 
        /opt/soft
        [root@localhost soft]#

        实例3:目录连接链接时,pwd -P  显示出实际路径,而非使用连接(link)路径;pwd显示的是连接路径

        [root@localhost soft]# cd /etc/init.d 
        [root@localhost init.d]# pwd
        /etc/init.d
        [root@localhost init.d]# pwd -P
        /etc/rc.d/init.d
        [root@localhost init.d]#

2、cd (change directory)切换目录

 

        格式:cd [/PATH/TO/SOMEDIR]

            cd ~(USERNAME) :可切换至用户名的家目录

            cd – :在上一级目录与当前目录之间随意切换

            ​cd $PWD

            cd .. :返回上级目录(若当前目录为“/“,则执行完后还在“/";".."为上级目录的意思);

            cd ../.. :返回上两级目录; cd !$ 把上个命令的参数作为cd参数使用

        实例1:使用cd命令进入/opt/rh 目录

        [root@localhost opt]# cd /opt/rh
        [root@localhost rh]# pwd
        /opt/rh

        实例2:使用cd ..返回上级目录

        [root@localhost rh]# pwd
        /opt/rh
        [root@localhost rh]# cd ..
        [root@localhost opt]# pwd
        /opt

        实例3:使用cd ../..返回上两级目录        

        [root@localhost rh]# pwd
        /opt/rh
        [root@localhost rh]# cd ../..
        [root@localhost /]# pwd
        /

3、mkdir (make directory)创建指定的名称的目录

        格式:mkdir [OPTION]... DIRECTORY...

            -p: 自动按需创建父目录;

            -v: verbose,显示详细过程;

            -m MODE:直接给定权限;

                注意:路径基名方为命令的作用对象;基名之前的路径必须得存在;

        作业:请使用命令行展开功能来完成以下练习

            (1)创建/tmp目录下的:a_c, a_d, b_c, b_d        

        [root@localhost tmp]# mkdir -v {a,b}_{c,d}
        mkdir: 已创建目录 "a_c"
        mkdir: 已创建目录 "a_d"
        mkdir: 已创建目录 "b_c"
        mkdir: 已创建目录 "b_d"
        [root@localhost tmp]# ls
        a_c  a_d  b_c  b_d
        [root@localhost tmp]# 

            (2)创建/tmp/mylinux目录下的:

 

 

mylinux/

├── bin

├── boot

   └── grub

├── dev

├── etc

   ├── rc.d

      └── init.d

   └── sysconfig

       └── network-scripts

├── lib

   └── modules

├── lib64

├── proc

├── sbin

├── sys

├── tmp

├── usr

   └── local

       ├── bin

       └── sbin

└── var

├── lock

├── log

└── run

 

[root@localhost tmp]# mkdir -vpmylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local{bin,sbin},var,lock,lock,log,run}
mkdir: 已创建目录 "mylinux/bin"
mkdir: 已创建目录 "mylinux/boot"
mkdir: 已创建目录 "mylinux/boot/grub"
mkdir: 已创建目录 "mylinux/dev"
mkdir: 已创建目录 "mylinux/etc"
mkdir: 已创建目录 "mylinux/etc/rc.d"
mkdir: 已创建目录 "mylinux/etc/rc.d/init.d"
mkdir: 已创建目录 "mylinux/etc/sysconfig"
mkdir: 已创建目录 "mylinux/etc/sysconfig/network-scripts"
mkdir: 已创建目录 "mylinux/lib"
mkdir: 已创建目录 "mylinux/lib/modules"
mkdir: 已创建目录 "mylinux/lib64"
mkdir: 已创建目录 "mylinux/proc"
mkdir: 已创建目录 "mylinux/sbin"
mkdir: 已创建目录 "mylinux/sys"
mkdir: 已创建目录 "mylinux/tmp"
mkdir: 已创建目录 "mylinux/usr"
mkdir: 已创建目录 "mylinux/usr/localbin"
mkdir: 已创建目录 "mylinux/usr/localsbin"
mkdir: 已创建目录 "mylinux/var"
mkdir: 已创建目录 "mylinux/lock"
mkdir: 已创建目录 "mylinux/log"
mkdir: 已创建目录 "mylinux/run"
[root@localhost tmp]# tree mylinux/
mylinux/
├── bin
├── boot
│  └── grub
├── dev
├── etc
│  ├── rc.d
│  │   └── init.d
│  └── sysconfig
│       └── network-scripts
├── lib
│  └── modules
├── lib64
├── lock
├── log
├── proc
├── run
├── sbin
├── sys
├── tmp
├── usr
│  ├── localbin
│  └── localsbin
└── var
23 directories, 0 files

4、rmdir(remove empty directories)删除空目录

        格式:rmdir [OPTION]... DIRECTORY...

            -p:删除某目录后,如果其父目录为空,则一并删除之;

            -v:显示过程;

        实例1:删除test2下的子目录test3

    

        [root@localhost tmp]# tree test2/
        test2/
        └── test3

        1 directory, 0 files
        [root@localhost tmp]# cd test2
        [root@localhost test2]# rmdir test3
        [root@localhost test2]# cd ..
        [root@localhost tmp]# tree test2
        test2

        0 directories, 0 files

二、文件查看类命令:

        cat, tac,more, less, tail,head

1、cat

        格式:cat  [OPTIN]...[FILE]

            -n或-number:有1开始对所有输出的行数编号;

 

            -b或--number-nonblank:和-n相似,只不过对于空白行不编号;

            -s或--squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行;            

            -A:显示不可打印字符,行尾显示“$”;

            -e:等价于"-vE"选项;

            -t:等价于"-vT"选项;

2、tac  反向列式

        tac 是将cat反写过来,所以他的功能就跟cat相反,cat是由第一行到最后一行连续显示在萤幕上,而tac则是由最后一行到第一行反向在萤幕上显示出来!

            格式: tac [OPTION]...[FILE]

 

                -a或--append:将内容追加到文件的末尾

                -i或--ignore-interrupts:忽略中断信号。

 

 

3、more&less

        more命令:

            格式:more [FILE]

                特点:翻屏至文件尾部后自动退出;

 

4、head&tail

        head命令:查看文件的前n行;

            格式:head [options] FILE

                -n # 查看前N行

                -#
 

        tail命令: 查看文件的后n行;

            格式:tail [options] FILE

                -n #

                -#

                -f:查看文件尾部内容结束后不退出,跟随显示新增的行;
 

4、stat

        文件的数据分两种:一种元数据,既属性数据;一种就是数据本身;可使用stat命令查看文件的元数据


           stat - display file or file system status

                格式:stat FILE...

文件:两类数据

元数据:metadata

数据: data

        实例1:查看文件access time

[root@localhost ~]# stat file_new 
  File: `file_new'
  Size: 0             Blocks: 0          IO Block: 4096   regular empty file
Device: ca01h/51713d    Inode: 655637      Links: 1
Access: (0644/-rw-r--r--)  Uid: (  111/linuxdaxue.com)   Gid: (  503/linuxdaxue.com)
Access: 2016-12-31 22:34:50.000000000 +0800
Modify: 2016-12-31 22:34:50.000000000 +0800
Change: 2016-06-16 14:30:33.233275690 +0800

       时间戳:

                access time:2015-12-10 16:12:22.776423693 +0800
                modify time:2015-12-10 16:12:22.776423693 +0800

                change time:2015-12-10 16:12:22.776423693 +0800

        实例2:查看文件系统信息

[root@localhost ~]# stat -f /dev/
File: "/dev/"
    ID: 0        Namelen: 255     Type: tmpfs
Block size: 4096       Fundamental block size: 4096
Blocks: Total: 124777     Free: 124738     Available: 124738
Inodes: Total: 124777     Free: 124220

5、touch命令

        可以使用touch命令更改文件的时间戳:

        touch - change file timestamps

        格式:touch [OPTION]... FILE...

    -c: 指定的文件路径不存在时不予创建;

    -a: 仅修改access time;

            -m:仅修改modify time;

            -t STAMP  

                使用指定的日期时间,而非现在的时间[[CC]YY]MMDDhhmm[.ss]

6、alies

        alias:显示当前shell进程所有可用的命令别名

            格式语法:#alias name=‘command line’

 

         删除别名:

            格式:unalias name

            #  unalias cp

                -p 打印出现有的别名;若不加任何参数,则列出目前所有的别名设置

         注意:在命令行中定义的别名,仅对当前shell进程有效,如果想永久有效,要定义配置文件    

 

            仅对当前用户:~/.bashrc    

            对所有有效:/etc/bashrc

          实例1:

        [root@localhost ~]# alias l='ll'
        [root@localhost ~]# l
        总用量 200
        -rw-------. 1 root root   2131 3月   9 23:36 anaconda-ks.cfg

            实例2:查看alias

        [root@localhost ~]# alias
        alias cp='cp -i'
        alias egrep='egrep --color=auto'
        alias fgrep='fgrep --color=auto'
        alias grep='grep --color=auto'
        alias l='ll'
        alias l.='ls -d .* --color=auto'
        alias ll='ls -l --color=auto'
        alias ls='ls --color=auto'
        alias mv='mv -i'
        alias rm='rm -i'

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值