linux文件管理工具(linux文件管理)
linux文件管理工具(linux文件管理)命令存储位置: /bin 普通用户使用的命令 /bin/ls /bin/date RHEL7淘汰 /sbin 管理员使用的命令 RHEL7淘汰 /usr/bin 普通用户使用的应用程序 /usr/sbin 管理员使用的应用程序 库文件存储位置: /lib 库文件Glibc RHEL7淘汰 /lib64 库文件Glibc RHEL7淘汰 /usr/lib 库文件Glibc /usr/lib64 库文件Glibc media 移动设备默认的挂载点 mnt 手工挂载设备的挂载点 misc automount进程挂载 net automount进程挂载 # df -ThP 查看系统中的挂载项 # mount 查看系统中的挂载项,显示详细的挂载信息 bin 普通用户使用的命令 /bin/ls /bin/date sbin 管理员使用的命令 /sbin/service dev 设备文件 /dev
欢迎关注我们,获取更多相关文章
一、bash shell对文件的操作
创建、复制、删除、移动、查看、编辑、压缩、查找
二、Linux目录结构
bin 普通用户使用的命令 /bin/ls /bin/date sbin 管理员使用的命令 /sbin/service dev 设备文件 /dev/sda /dev/tty1 dev/tty2 /dev/pts/1 /dev/zero /dev/null /dev/random root root用户的HOME home 存储普通用户家目录 lost found 孤儿文件 用于存放系统不正常关机后形成的一些无家可归的文件 PRoc 虚拟的文件系统,反映出来的是内核,进程信息或实时状态,只存在于内存中,大小为0,du -sh /proc sys 伪文件系统(硬件信息 内核参数 进程在内存中的信息),是一种虚拟的基于内存的文件系统, 类似于proc目录 opt 第三方软件(flush splunk open office) cgroup 资源控制目录(内存 cpu....) usr 系统文件(应用程序目录),相当于C:\Windows /usr/local 软件安装的目录,相当于C:\Program /usr/bin 普通用户使用的应用程序 /usr/sbin 管理员使用的应用程序 /usr/lib 32 bit库文件Glibc /usr/lib64 64 bit 库文件Glibc boot 存放的系统启动相关的文件,例如kernel grub(引导装载程序)
etc 配置文件(系统相关如网络/etc/sysconfig/network,应用相关配置文件...) lib 库文件,存放应用程序所需要的共享库,类似于windows里的.dll文件 lib64 库文件Glibc tmp 临时文件(主要是程序产生的临时数据) var 存放的是一些变化文件,比如数据库,日志,邮件.... MySQL: /var/lib/mysql vsftpd: /var/ftp mail: /var/spool/mail cron: /var/spool/cron log: /var/log 临时文件: /var/tmp (主要是程序产生的临时文件) misc和net autofs服务使用的目录 srv 服务器数据目录
设备(主要指存储设备)挂载目录
media 移动设备默认的挂载点 mnt 手工挂载设备的挂载点 misc automount进程挂载 net automount进程挂载 # df -ThP 查看系统中的挂载项 # mount 查看系统中的挂载项,显示详细的挂载信息
命令存储位置: /bin 普通用户使用的命令 /bin/ls /bin/date RHEL7淘汰 /sbin 管理员使用的命令 RHEL7淘汰 /usr/bin 普通用户使用的应用程序 /usr/sbin 管理员使用的应用程序 库文件存储位置: /lib 库文件Glibc RHEL7淘汰 /lib64 库文件Glibc RHEL7淘汰 /usr/lib 库文件Glibc /usr/lib64 库文件Glibc
三、文件类型
# ll anaconda-ks.cfg //看第一个字符 -rw-------. 1 root root 2460 6月 1 13:14 anaconda-ks.cfg - 普通文件(文本文件,二进制文件,压缩文件。。。) d 目录文件(蓝色) b 设备文件(块设备)存储设备硬盘,U盘 /dev/sda /dev/sda1 c 设备文件(字符设备)打印机,终端 /dev/tty1 s 套接字文件 p 管道文件 l 链接文件(淡蓝色)lrwxrwxrwx 1 root root 9 4月 22 18:17 check_spop -> check_tcp 注: 1、通过颜色判断文件的类型是不一定正确 2、Linux文件是没有扩展名这一说
四、路径 (定位文件)
/tmp/file1 和 /home/tom/file1 不是同一文件! 绝对路径: 从' / '开头的路径 '/' /home/user1 /var/log 相对路径: 相对于当前目录开始 Desktop/file1 file1 . .. ---------------------------------- . 链接到当前目录 .. 链接到上一级目录 ~ 当前用户的家目录 ---------------------------------- # useradd tom # touch /home/alice/file1 # touch ~tom/file2 # ls /home/tom # mkdir abc # touch ../file3 # touch file4 # touch abc/file5 # ls # ls abc
五、文件操作
文件操作之:cd 改变目录: cd 绝对路径 cd /home/tom cd ~tom cd 相对路径 cd Desktop/abc cd .. cd 专用: cd - 返回上次目录 cd .. cd 直接回家 2. 文件管理之:创建/复制/移动/删除 文件创建 文件 touch # touch file1.txt //无则创建,有则修改时间 # touch file2 file3 # touch /home/file4.txt # touch /home/file5 file6 # touch file{1..20} # touch file{a..c} # touch mu{a b} //{}集合,等价touch mua mub 注:在同一个目录下面,创建一个同名的文件是可以成功的,但是文件的修改时间会发生变化 [root@localhost tmp]# ls /tmp/hao/* // *表示所有的意思 目录创建 目录 mkdir # mkdir dir1 # mkdir /home/dir2 /home/dir3 # mkdir /home/{dir4 dir5} # mkdir -v /home/{dir6 dir7} # mkdir -v /home/dir8/111/222 # mkdir -pv /home/dir8/111/222 # mkdir -pv /home/{yang/{dir1 111} zhanghao} 复制 cp 用法: cp [OPTION]... [-T] SOURCE DEST # cd # mkdir /home/dir{1 2} # cp -v install.log /home/dir1 # cp -v install.log /home/dir1/test.txt //将前面的文件拷贝到后面的目录当中并重新命名 # cp -v /etc /home/dir1 # cp -rv /etc /home/dir1 //-r递归 # cp -v anaconda-ks.cfg !$ # cp -rv /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/passwd /etc/grub.conf /home/dir2 //将多个文件拷贝到同一个目录 # cp -rv /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/passwd /etc/grub.conf /etc/hosts. # cp -r /etc /tmp # cp -rf /etc /tmp # \cp -r /etc /tmp [root@localhost ~]# type -a cp cp is aliased to `cp -i' cp is /bin/cp [root@localhost ~]# cp -rvf /etc/sysconfig/network-scripts/{ifcfg-eth0 ifcfg-eth0.bak} [root@localhost ~]# cp -rvf /etc/sysconfig/network-scripts/ifcfg-eth0{ .old} 移动 mv 用法: mv [OPTION]... [-T] SOURCE DEST # mkdir /tmp/dir3 # mv file1 /tmp/dir3 //将file1移动到/home/dir3 # mv file2 /tmp/dir3/file20 //将file2移动到/home/dir3,并改名为file20 # mv file4 file5 //将file4重命名为file5,当前位置的移动就是重命名 删除 rm rmdir 示例1:删除/home/dir1 # cd /home # rm -rf dir1 -r 递归 -f force强制 -v 详细过程 # rmdir /tmp/dir/ 只能删除空目录 示例2: [root@localhost ~]# rm -rf file* [root@localhost ~]# rm -rf dir* [root@localhost ~]# rm -rf /home/dir* [root@localhost ~]# rm -rf *.pdf 示例3: [root@localhost dir]# mkdir -- -a [root@localhost dir]# ls -a dir2 file1 [root@localhost dir]# mkdir -- -b [root@localhost dir]# ls -a -b dir2 file1 [root@localhost dir]# rm -- -a rm: 无法删除"-a": 是一个目录 [root@localhost dir]# rm -rf -- -a [root@localhost dir]# ls -b dir2 file1 [root@localhost dir]# rm -rf ./-b/ [root@localhostdir]# ls dir2 file1 3. 文件管理之:查看文件内容 文本文件 命令: (cat lessmore head tail grep tac rev) cat看文件的所有的内容 less支持上下翻看,并且支持搜索,使用n或者是N上下切换搜索的内容 more只支持向下翻看 /bin/ls /etc/hosts /etc/sysconfig/network /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/passwd /etc/shadow /etc/group /etc/grub.conf /etc/resolv.conf /var/log/messages /var/log/secure cat -n 显示所有行 -b 显示有效行 -A 包括控制字符(换行符) linux $ Windows ^M$ ======================================================== 扩展:dos2unix 将Windows格式的文件转换成Unix格式 unix2dos 将Unix格式的文件转换成Windows格式 例如 # unix2dos file1 # dos2unix file2 ======================================================== less more head tail # head /etc/passwd 默认的看头10行 # head -2 /etc/passwd 看头两行 # tail /etc/passwd 看尾10行,默认显示的是10行 # tail -1 /etc/passwd 看尾1行 # tail /var/log/messages # tail -30 /var/log/messages 看尾30行 # tail -f /var/log/messages //-f 动态查看文件尾部信息 # tailf /var/log/messages 另外打开一个终端,手动产生日志,使用下面的命令 # logger kldskjjdfa 切换回到动态查看日志的终端中,看一下是否成功动态产生的日志
扩展:
# tail -f /var/log/messages //-f 动态查看文件尾部信息,追踪的是文件的inode号 # tail -F /tmp/file1 //动态查看文件尾部信息,追踪的是文件名 注:vim gedit编辑文件时,inode会改变 ============================================================================== grep 针对文件内容进行过滤 # grep 'root' /etc/passwd # grep --color 'root' /etc/passwd # grep --color '^root' /etc/passwd # grep --color 'bash$' /etc/passwd # grep 'failure' /var/log/secure
随记:
Linux文件有三种时间: 访问时间:atime,查看内容 修改时间:mtime,修改内容 改变时间:ctime,文件属性,比如权限
注:RHEL6开始relatime,atime延迟修改,必须满足其中一个条件: 1. 自上次atime修改后,已达到86400秒; 2. 发生写操作时;