Linux文件及目录的管理

来源:互联网 发布:mac mysql客户端工具 编辑:程序博客网 时间:2024/05/17 09:10
文件管理
目标:对系统中的文件进行增、删、该、查。
 
查询:
1、查看当前工作路径:pwd
2、查文件列表:ls
格式:ls   [-arRlh]   [路径]
注:当不指定路径是则显示当前目录路径下的文件列表。
选项:
--help   显示帮助
-a     即all,显示所有文件,包括以.开头的隐藏文件。ls  -a  /root
-l      以long长格式显示文件属性(包括类型、权限、链接数、属主、属组、大小、时间、文件名)。ls  -l   /root
-h     与-l 一起,以易于阅读的格式输出文件大小(如 1K 234M 2G)。ls  -lh   /root
-r     逆序排列(降序)。对比ls   /  和  ls   -r   /  结果的区别。
-R    递归显示子目录。ls  -R  /etc/sysconfig
 
Linux的文件类型:
-  普通文件,文本文件、mp3音乐、avi视频、jpg图片等。如ls  -l  /etc/host*
d  目录,即文件夹。例:ls  -l   /
l   软链接文件,即快捷方式。例:ls  -l   /
b  块block设备文件,即硬盘、分区、u盘。例:ls  -l  /dev/sd*
c  字符设备文件,通常指命令终端设备。例:ls  -l  /dev/tty*
s  套接字文件,通常是网络服务生成的,文件中保存的IP和port端口号。例:ls  -l  /run/rpcbind.sock
p  管道文件(pipo),用来做命名管道。例:ls -l /run/systemd/inhibit
 
查文件类型的方法:
方法一:ls  -ld   文件名或目录名。例:ls  -ld  /etc/hosts  /etc
方法二:file   文件名或目录名。例:file  /etc/hosts  /etc  /dev/sda /dev/tty
 
3、查看纯文本文件内容:
cat、tac、nl、head、tail、more、less、grep
 
cat:读全文
例:cat   /etc/passwd
  cat  -n   /etc/passwd    显示行号
  cat  -A   /etc/hosts    等于-vET,其中-E是在每行结束处显示"$"
 
tac:逆序读全文
例:  tac   /etc/hosts 
 
nl:读全文并显示行号。忽略空白行(即空白行无行号)。nl   /etc/yum.conf
 
head:读开头
例: head   /etc/passwd    读前10行
   head  -5   /etc/passwd   读前5行
 
tail:读结尾
例: tail   /etc/passwd    读最后10行
   tail  -6   /etc/passwd   读最后6行
 
问题:读/etc/passwd文件的第6行内容?读/etc/passwd文件的倒数第7行内容?读/etc/passwd的前12行内容并显示行号?
解答:head   -6   /etc/passwd  |  tail  -1
      tail  -7   /etc/passwd | head  -1
      head   -12   /etc/passwd  | cat  -n
说明:|是管道符号,作用是将前一个命令的结果传给后一个命令继续处理。一条命令中可以多个管道符。
 
more:读更多,向下翻页显示
例:more   /etc/passwd
   空格下翻一页,回车下翻一行,q键退出。
 
less:读更少,上下翻页显示
例:less   /etc/passwd
   可用方向键,空格或PageDown下翻一页,PageUp上翻一页,回车下翻一行,q键退出。
 
grep:读关键字所在的内容。也称为匹配关键字。
用法:grep  [选项]   关键字   文件名
例如:grep   root   /etc/passwd     显示/etc/passwd文件中的root关键字的内容
          grep   ^root   /etc/passwd    显示以root开头的。^(上尖、拖字符、乘方)表示锚定开头
          grep   bash$   /etc/passwd    显示以bash结尾的。$表示锚定结尾
选项:
--help  显示帮助
--color  以彩色显示关键字,centos7默认开启了此功能
-n  显示行号
-E  启用扩展正则表达式字符。如|表示或者。grep  -En  'root|adm|lp'  /etc/passwd
-w  精确匹配关键字。对比grep  localhost   /etc/hosts和grep  -w  localhost   /etc/hosts
-v   反向匹配,即不包含关键字的内容。grep  -v  127   /etc/hosts
-B  显示关键字及其before前n行内容。grep  -B  2   adm   /etc/passwd
-A  显示关键字及其after后n行内容。grep  -A  2   adm   /etc/passwd
 
touch:创建空文件,或更新文件的时间。
例:touch  a  b  c   创建3个文件
    ls    显示文件列表
 
stat:显示文件的状态信息(详细属性),属性包括文件路径、大小、块、文件类型、Inode索引号、硬链接个数、权限、uid、gid、环境(SElinux属性)、时间。
例:stat   /etc/hosts
文件的3个时间:
atime:访问时间(Access)。是指用touch、cat、head等命令访问过这个文件。touch  /etc/hosts后再看文件的3个时间。
mtime:更改时间(modify)。是指用vim、gedit等命令修改过文件内容。
ctime:改动时间(change)。是指用chown、chmod改过文件的属性、权限。chmod  -v  +x  /etc/hosts后再看文件的ctime时间。
 
rm:删除(remove)文件或目录(即文件夹)。
例:ls
    rm  -fv  a  b  c    强制(-f)删除当前目录中的a、b、c文件,并显示过程(-v)

    rm  -rfv  /tmp/*    清空/tmp目录中的所有文件。-r是递归(目录中及其子目录)


目录管理(文件夹):
pwd、ls、cd、mkdir、rmdir
pwd:显示工作路径
cd:切换目录(change  directory),即打开文件夹
例:cd  或 cd  ~ 切换到当前用户的家目录
    pwd   显示工作路径
    cd   /etc/sysconfig/network-scripts   切换到指定的目录
    ls    显示文件列表
    cd   ..   切换上一级目录。..表示上一级目录。.表示当前目录自己
    cd   ../..   返回上一级的上一级目录
    cd   /    切换到根目录
说明:鼠标双击打开一个文件夹,其实后台执行了cd、ls、pwd这些命令。
 
mkdir:新建目录
例:cd
    mkdir  -v  ak  bk  ck   在当前目录中新建3个目录,并显示过程
    ls   显示文件列表
    mkdir  -v  1/2/3/4    会提示无法创建,因为没有1/2/3目录,所以无法创建4目录
    mkdir  -pv  1/2/3/4   正常在当前目录中新建多级目录1/2/3/4。-p是创建父级目录。
 
rmdir:删除空目录。
    rmdir  -pv  1/2/3/4   逐步删除1/2/3/4这几个空目录
    rmdir  -v  ak  bk  ck   删除当前目录下指定的空目录


文件和目录管理公用:
rm删除、cp复制、mv移动
rm  -rfv  /tmp/*   清空/tmp目录下的所有文件
 
cp:复制
用法:cp  [-rapv]   来源   目标
例:cp  -v  /etc/host*   /tmp/    将/etc/host*文件复制到/tmp/目录下
    cp  -v   /opt   /tmp/    提示略过目录"/opt",说明复制失败,要用-r递归复制
    cp  -rv  /opt    /tmp/option   将/opt目录复制到/tmp目录下改名为option。-r是递归复制文件夹。
 
mv:移动(move)
用法:mv  [-v]   来源   目标
例:cd  切换到用户的家目录
    mkdir  -v   dir1   创建dir1目录
    mv  -v   dir1  dir2    将dir1改名为dir2
    mv  -v  dir2   /tmp/   将dir2移动到/tmp目录下
原创粉丝点击