Linux基本文件管理


欢迎大家加QQ群:414835967 交流Linux技术并下载群共享文件中的相关软件包和随堂笔记 


知识点:


    Linux系统目录结构

    相对/绝对路径

    设置时间

    创建/复制/删除文件

    rm -rf / 意外事故

    查看文件内容

    恢复Linux被删除的文件

    

一、Linux系统目录结构

    

# 倒置树型结构

/   通常称为根分区。所有的文件和目录皆由此开始。只有root用户对此目录拥有写权限。

# ---/etc  配置文件  包含所有应用程序的配置文件,也包含启动、关闭某个特定程序的脚本,例如,/etc/passwd,/etc/init.d/network等。

# ---/boot 存放Linux系统启动时需要加载的文件。 (一般在另外一个磁盘分区里面保存) Kernel、grub等文件都存放在此。

# ---/home  普通用户所有数据存放在这个目录下 
  
# ---/var  是一个可增长的目录,包含很经常变的文件。例如,/var/log(系统日志)、/var/lib (包文件) 
 
# ---/root  管理员所有数据。  root用户的家目录

# ---/tmp  临时文件存储位置

# ---/usr  usr表示的是unix software source

# ---/bin  命令  此目录包含二进制可执行文件。

# ---/sbin  系统命令 ,此目录中的命令主要供系统管理员使用,以进行系统维护。例如,iptables、reboot、fdisk等。

# /mnt - 挂载目录  挂载点,系统管理员可用于临时挂载文件系统。

# ---/dev  包含设备文件。在Linux中,一切都被看做文件。终端设备、USB、磁盘等等都被看做文件,如/dev/sda。


二、绝对路径/相对路径   

# cd /etc/sysconfig/network-scripts/

# 相对路径:
[root@xuegod63 ~]# cd /etc
[root@xuegod63 etc]# cdsysconfig/network-scripts/

.  (表示当前目录)
.. (表示上级目录)


三、创建/查看/复制/删除 文件和文件夹


创建文件和目录


    1 touch

    作用:常用来创建空文件

    语法: touch 文件名

[root@xuegod63 /]# toucha.txt
[root@xuegod63 /]# ls a.txt
a.txt

 

    2 mkdir

    作用:创建目录

    语法:mkdir 目录名

# mkdir /tmp/test

 

    -p 连同父目录一起创建

# mkdir /PATH/TO/DIRNAME
# mkdir -p
#【例】 用-p创建目录

[root@xuegod63 ~]#   mkdir -p /a/b/c/d

[root@xuegod63 ~]# cd !$            # !$  表示上一个命令的最后一个参数
cd /a/b/c/d

[root@xuegod63 d]# cd ../../

[root@xuegod63 b]# pwd
/a/b

  

查看文件方法


    3 cat

    作用:查看文件内容

    语法:cat 文件名

    例:

 # cat /etc/passwd

     

    4 more

    【例】查看文件内容

    # more  /etc/passwd

    q 退出

     

    5 less 

    【例】查看文件内容

    # less  /etc/passwd

    q 退出

    使用光标键可以向上翻页

     

    linux中more与less的区别:

    more:不支持后退,但几乎不需要加参数,空格键是向下翻页,Enter键是向下翻一行,在不需要后退的情况下比较方便。

    less:支持前后翻滚,既可以向上翻页(pageup按键),也可以向下翻页(pagedown按键)。,空格键是向下翻页,Enter键是向下翻一行

     

     

    6 head

    作用:从第一行开始,查看文件,默认显示前10行

    -n 数字    显示多少行

    【例】

# head /etc/passwd
# head -n 3 /etc/passwd

     

    7 tail 

    作用:从第后一行开始,查看文件,默认显示最后10行

     

    -n  显示多少行

    -f  动态显示数据(不关闭)  常用来查看日志

[root@mk tmp]# tail -f /var/log/messages
[root@mk ~]# service networkrestart

    查看谁修改了/etc/resolv.conf中DNS服务器地址。


 

删除文件和文件夹

    8 rm 

    作用:删除文件或目录

    语法: rm -rf  文件或目录名

[root@xuegod63 ~]# rm -rf  /tmp/test
[root@xuegod63 ~]# rm -rf  /tmp/test11

    -r  递归删除(可以删除目录和目录里面的东西)

    -f  强行删除不交互

 

重命名或移动

    9 mv 

    作用:移动、剪切、重命名

    语法:mv 源:文件或目录名    目标:文件或目录名

    1.把1文件的名字改为suifeng

[root@suifeng128 ~]# mv 1suifeng

[root@suifeng128 ~]# ls
suifeng

     

    2.把文件1移动到a目录下

[root@suifeng128 ~]# mv 1a/

[root@suifeng128 ~]# ls a
1

    工作经验:  慎用删除命令,勤用mv命令

 

复制文件及拷贝目录


    10 cp

    作用:复制文件

    语法:cp 源文件  目标文件

[root@xuegod63 ~]# cp /etc/passwd /tmp/

[root@xuegod63 ~]# ls /tmp/passwd
/tmp/passwd

    

    拷贝目录:

[root@xuegod63 ~]# cp /etc/ /tmp/
cp: omitting(忽略) directory `/etc/‘

# -r 包含子目录和文件 (递归复制)。
[root@xuegod63 ~]# cp -r /etc/ /tmp/

    

四、关于日期命令date


    作用:1.打印时间、日期或者进行设置时间

    2.打印当前的年份


    1. date 打印时间、日期或者进行设置时间

    2. 打印当前的年份

[root@suifeng128 ~]# date+%Y
2014


    3. 打印当前的月份

[root@suifeng128 ~]# date+%m
12

    4. 打印当前的分钟

[root@suifeng128 ~]# date+%M
05


    5. 打印当前的小时

[root@suifeng128 ~]# date+%H
05


    6.打印当前的天数

[root@suifeng128 ~]# date+%d
07


    7. 设置系统时间和日期,格式:月日小时分钟年.秒

    2014 12 07 21 18 40

[root@suifeng128 ~]# date120721082014.40
2014年 12月 07日 星期日 21:08:40 CST


    8.直接设置年份和月份

[root@suifeng128 ~]# date-s 2014/12/09
2014年 12月 09日 星期二 00:00:00 CST

# 如果直接设置年月份的话,时间默认为00:00:00


    9.直接设置年份月份和时间

[root@suifeng128 ~]# date -s "2014/12/0920:20"     # 日期和时间需要用“”来括起来
2014年 12月 09日 星期二 20:20:00 CST

[root@suifeng128 ~]# date 12072115
2014年 12月 07日 星期日 21:15:00 CST


    10.直接设置时间

[root@suifeng128 ~]# date -s 20:01
2014年 12月 09日 星期二 20:01:00 CST
    
[root@suifeng128 ~]# date -s 2007              # 不需要:来隔开
2014年 12月 09日 星期二 20:07:00 CST


    11.把时间戳换算成日期

# date -d “1970-01-01 16066 days”


    12.把日期换算成时间戳

# echo $(($(date --date=”2015/01/12” +%s)/86400+1))


    互动:


    1. 先创建同名文件#touch /tmp/test11

    再创建同名目录#mkdir /tmp/test11 

    结果不能创建目录


    2. 先创建同名目录#mkdir /tmp/test11

    再创建同名文件#touch /tmp/test11

    结果只有目录,创建文件不成功。


    得出:同一目录下不能有同名的文件名或目录名




欢迎大家加QQ群:414835967 交流Linux技术并下载群共享文件中的相关软件包和随堂笔记 


本文出自 “学神IT-Linux讲师-MK” 博客,请务必保留此出处http://xuegod.blog.51cto.com/9708186/1639886

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。