CentOS基础文件基本操作命令 您所在的位置:网站首页 Linux查看所有文件夹 CentOS基础文件基本操作命令

CentOS基础文件基本操作命令

2023-07-09 11:37| 来源: 网络整理| 查看: 265

文件(夹)查看类命令

ls--显示指定目录下内容

145244955.png

说明:ls 显示结果以不同的颜色来区分文件类别。蓝色代表目录,灰色代表普通文件,绿色代表可执行文件,红色代表压缩文件,浅蓝色代表链接文件。

-a---显示所有内容,包括隐藏文件

144553371.png

说明:在Linux系统中,以“.”开头的就是隐藏文件或隐藏目录。

-l---以长格式(内容更详细)显示文件或目录的详细信息。150954105.png

说明:ls -l命令可以简写成ll,

输出的信息共分为7组:文件类别和文件权限、链接数或子目录个数、文件所有者、文件所属组、文件大小(单位为字节B)、文件创建或修改时间、文件名。

文件类别:第一组前1位表示文件类别,“-”代表普通文件,“d”代表目录,“l”代表符号链接,“c”代表字符设备,“b”代表块设备文件权限:第一组后9位表示文件权限,前3位为user、中间3位为group、后三位为other的权限

-d---显示目录本身的属性而不是目录中的内容。

1 2 3 4 5 [root@localhost ~] # ls -ld /home drwxr-xr-x. 4 root root 4096 9月  22 10:41  /home [root@localhost ~] # ls -d /home /home [root@localhost ~] #

-h---以K、M、G等单位显示文件大小(默认为字节)

1 2 3 4 5 6 7 [root@localhost ~] # ls -h /home justin  lost+found [root@localhost ~] # ls -lh /home 总用量 20K drwx------. 27 justin justin 4.0K 9月  22 13:19 justin drwx------.  2 root   root    16K 9月  18 15:30 lost+found [root@localhost ~] #

-R---若目录下有档案,也将档案依序列出

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 [root@localhost ~] # ls -lR /home /home : 总用量 20 drwx------. 27 justin justin  4096 9月  22 13:19 justin drwx------.  2 root   root   16384 9月  18 15:30 lost+found /home/justin : 总用量 32 drwxr-xr-x. 2 justin justin 4096 9月  22 10:49 公共的 drwxr-xr-x. 2 justin justin 4096 9月  22 10:49 模板 drwxr-xr-x. 2 justin justin 4096 9月  22 10:49 视频 drwxr-xr-x. 2 justin justin 4096 9月  22 10:49 图片 drwxr-xr-x. 2 justin justin 4096 9月  22 10:49 文档 drwxr-xr-x. 2 justin justin 4096 9月  22 10:49 下载 drwxr-xr-x. 2 justin justin 4096 9月  22 10:49 音乐 drwxr-xr-x. 2 justin justin 4096 9月  22 10:49 桌面 /home/justin/ 公共的: 总用量 0 /home/justin/ 模板: 总用量 0 /home/justin/ 视频: 总用量 0 /home/justin/ 图片: 总用量 0 /home/justin/ 文档: 总用量 0 /home/justin/ 下载: 总用量 0 /home/justin/ 音乐: 总用量 0 /home/justin/ 桌面: 总用量 0 /home/lost +found: 总用量 0 [root@localhost ~] #

-t---将档案按照建立时间的先后次序列出

1 2 3 4 5 6 7 8 9 10 11 [root@localhost ~] # ls -l /home 总用量 20 drwx------. 27 justin justin  4096 9月  22 13:19 justin drwx------.  2 root   root   16384 9月  18 15:30 lost+found -rw-r--r--.  1 root   root       0 9月  22 15:21 t [root@localhost ~] # ls -lt /home 总用量 20 -rw-r--r--.  1 root   root       0 9月  22 15:21 t drwx------. 27 justin justin  4096 9月  22 13:19 justin drwx------.  2 root   root   16384 9月  18 15:30 lost+found [root@localhost ~] #

说明:ls命令还可以结合通配符“?”或“*”一起使用,问号“?”可以匹配文件名中的一个任意字符,而“*”可以匹配文件名中的任意多个字符。这两个通配符同样也适用于Shell环境中的其他大多数命令。

1 2 3 4 5 6 7 8 9 10 11 12 gssapi_mech.conf         popt.d                        xml gtk-2.0                  portreserve                   yp.conf hal                      postfix                       yum host.conf                ppp                           yum.conf hosts                    prelink.cache                 yum.repos.d hosts.allow              prelink.conf hosts.deny               prelink.conf.d [root@localhost etc] # ll -d /etc/po*.d drwxr-xr-x. 2 root root 4096 1月  11 2010  /etc/popt .d [root@localhost etc] # ll -d /etc/po?.d ls : 无法访问 /etc/po ?.d: 没有那个文件或目录 [root@localhost etc] #

du---显示文件或目录大小

-h或--human-readable---以K,M,G为单位,提高信息的可读性

1 2 3 4 5 [root@localhost src] # du -h nagios-3.5.0.tar.gz 1.8M    nagios-3.5.0. tar .gz [root@localhost src] # du nagios-3.5.0.tar.gz 1748    nagios-3.5.0. tar .gz [root@localhost src] #

-a---显示全部目录和其次目录下的每个档案所占的磁盘空间

-b或-bytes---显示目录或文件大小时,以byte为单位

1 2 3 [root@localhost  local ] # du -b src/nagios-3.5.0.tar.gz 1789376 src /nagios-3 .5.0. tar .gz [root@localhost  local ] #

-c或--total---显示每个目录或文件的大小外,同时也显示所有目录或文件的总和

-m或--megabytes---以1MB为单位-s---只显示各档案大小的总合

1 2 3 [root@localhost  local ] # du -sh src/ 41M src/ [root@localhost  local ] #

-x---只计算同属同一个档案系统的档案

-L---计算所有的档案大小

df---显示档案系统的状况;主要用来了解系统中已经挂载的各个文件系统的磁盘使用情况

-h 显示更易读的容量单位-T 显示文件系统的类型

1 2 3 4 5 6 7 8 [root@localhost ~] # df -Th 文件系统    类型      容量  已用  可用 已用%% 挂载点 /dev/sda2ext4     9.9G  2.6G  6.9G  28% / tmpfs        tmpfs    504M  112K  504M   1%  /dev/shm /dev/sda1ext4     194M   27M  158M  15%  /boot /dev/sda5ext4     7.7G  147M  7.2G   2%  /home /dev/sr0iso9660     2.9G  2.9G     0 100%  /media/RHEL_6 .3 i386 Disc 1 [root@localhost ~] #

file---查看文件类型

1 2 3 4 5 6 [root@localhost home] # file justin/ justin/: directory [root@localhost home] # file justin1 justin1: empty [root@localhost ~] # file install.log install .log: UTF-8 Unicode text

说明:file命令用于查看文件的类型,可以根据文件的内部存储结构来进行判别,而不根据文件的扩展名来进行判别。在Linux系统中,文件扩展名与文件类型没有绝对的关系。

创建文件名中可以带有空格,但需要用引号引起来,不建议使用空格

文件内容查看

cat---显示文件内容

1 [root@localhost log] # cat /var/log/messages

说明:cat在显示文本文件的内容时不进行停顿,对于内容较长的文件,在快速滚屏显示之后,只有最后一页的文件内容保留在屏幕中显示,因此cat不适合查看长文件。

more---分页显示文件内容

-num--- 一次显示的行数 -s ---当遇到有连续两行以上的空白行,就代换为一行的空白行 +num ---从第 num 行开始显示

1 2 3 4 5 6 7 [root@localhost log] # more -5s /var/log/messages Sep 22 10:36:06 localhost kernel: imklog 5.8.10, log  source  =  /proc/kmsg  started. Sep 22 10:36:06 localhost rsyslogd: [origin software= "rsyslogd"  swVersion= "5.8.10"  x-pid = "1323"  x-info= "http://www.rsyslog.com" ] start Sep 22 10:36:06 localhost kernel: Initializing cgroup subsys cpuset Sep 22 10:36:06 localhost kernel: Initializing cgroup subsys cpu --More--(0%)

说明:类似 cat ,不过会以一页一页的显示方便使用者逐页阅读,空白键(space):显示下一页,b 键:显示上一页,q 键 :退出

less----分页显示文件内容

说 明:less命令的用法与more命令类似,它们之间的区别是当文件内容显示到文件尾时,more命令会自动退出阅读环境,而less命令不自动退出,用 户仍然可以利用上下键来卷动文件,这样更加有利于对文件内容的反复阅读。当要结束浏览时,要在less命令的提示符“:”后按Q键退出

head---查看文件开头部分的内容

-n 指定显示的具体行数。

1 2 3 4 5 6 7 [root@localhost ~] # head -5 /etc/passwd root:x:0:0:root: /root : /bin/bash bin:x:1:1:bin: /bin : /sbin/nologin daemon:x:2:2:daemon: /sbin : /sbin/nologin adm:x:3:4:adm: /var/adm : /sbin/nologin lp:x:4:7:lp: /var/spool/lpd : /sbin/nologin [root@localhost ~] #

说明:默认情况下,head显示前10行内容

tail---查看文件末尾部分的内容

1 2 3 4 5 6 7 [root@localhost ~] # tail -5 /etc/passwd nfsnobody:x:65534:65534:Anonymous NFS User: /var/lib/nfs : /sbin/nologin abrt:x:173:173:: /etc/abrt : /sbin/nologin sshd:x:74:74:Privilege-separated SSH: /var/empty/sshd : /sbin/nologin tcpdump:x:72:72::/: /sbin/nologin justin:x:500:500:justin_peng: /home/justin : /bin/bash [root@localhost ~] #

说明:tail命令用法与head命令类似

创建文件(夹)命令

touch---改变档案的时间记录,档案不存在则创建一个空文件,通常用来创建一个文件

1 2 3 4 [root@localhost home] # touch file1 file2 [root@localhost home] # ls file1  file2  justin  lost+found  t [root@localhost home] #

-a 改变档案的读取时间记录。 -m 改变档案的修改时间记录。 -c 假如目的档案不存在,不会建立新的档

1 2 3 4 5 6 7 [root@justin  touch ] # touch file{1..5} [root@justin  touch ] # ls file1  file2  file3  file4  file5 [root@justin  touch ] # touch file{6...9} [root@justin  touch ] # ls file1  file2  file3  file4  file5   file {6...9} [root@justin  touch ] #

说明:在实际使用中经常用于创建新的测试文件。使用文件名作为参数,可以同时创建多个文件,切中间只能是两个点号。当目标文件已经存在时,将更新该文件的时间标记,否则将创建指定名称的空文件。

mkdir---Make Directory---创建新的目录

-p 确保目录名称存在,不存在的就建一个。

1 2 3 4 5 6 7 [root@localhost home] # ls justin  lost+found  t [root@localhost home] # mkdir dir1 [root@localhost home] # mkdir dir2/dir mkdir : 无法创建目录 "dir2/dir" : 没有那个文件或目录 [root@localhost home] # mkdir -p dir2/dir [root@localhost home] #

同时创建多级目录

1 2 3 4 5 6 7 8 [root@localhost home] # ls justin  lost+found  t [root@localhost home] # mkdir -p {dir1,dir2/{dir3,dir4}} [root@localhost home] # ls dir1  dir2  justin  lost+found  t [root@localhost home] # ls dir2 dir3  dir4 [root@localhost home] #

删除文件(夹)命令

rmdir---删除空目录(若目录非空删除中会报错)

-p 当子目录被删除后也成为空目录的话,则顺便一并删除

1 2 3 4 5 6 7 8 9 10 [root@localhost home] # mkdir -p {dir1,dir2/dir3} [root@localhost home] # ls dir1  dir2  justin  lost+found  t [root@localhost home] # rmdir dir1 [root@localhost home] # rmdir dir2 rmdir : 删除  "dir2"  失败: 目录非空 [root@localhost home] # rmdir -p dir2/dir3/ [root@localhost home] # ls justin  lost+found  t [root@localhost home] #

rm---删除档案或目录

文件的删除权限是由上级目录决定的,即使一个用户有该文件的删除权限,没有上次目录的写权限也是无法删除该文件

-i 删除前逐一询问确认。

-v 显示删除过程-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。 -r 将目录及以下档案也逐一删除。

1 2 3 4 5 6 [root@localhost home] # mkdir -p dir1/dir2 [root@localhost home] # rm -r dir1/ rm :是否进入目录 "dir1" ? y rm :是否删除目录  "dir1/dir2" ?y rm :是否删除目录  "dir1" ?y [root@localhost home] #

Linux 删除除某个文件之外的所有文件

1 2 3 4 5 6 [root@APP  rm ] # ls sda  SDa  sdaa  SDaa  sdaaa  sdaaaa  SDaaaa  sdaab  sdaz [root@APP  rm ] # ls |grep -v SD|xargs rm -f [root@APP  rm ] # ls SDa  SDaa  SDaaaa [root@APP  rm ] #

还有一种更为方便的方法,需要卡其BashShell的extglob选项,

1 2 3 4 5 6 7 8 [root@APP  rm ] # touch sda  SDa  sdaa  SDaa  sdaaa  sdaaaa  SDaaaa  sdaab  sdaz [root@APP  rm ] # rm -f !(SD*) - bash : !: event not found [root@APP  rm ] # shopt -s extglob [root@APP  rm ] # rm -rf !(SD) [root@APP  rm ] # ls SDa  SDaa  SDaaaa [root@APP  rm ] #

如果出现-bash: !: event not found表示当前系统未开启,

                  列出所有选项:shopt -p 

                  列出所有打开的选项:shopt -s 

                  开启extglob命令:shopt -s extglob 

                  列出所有关闭的选项:shopt -u 

                  关闭extglob命令:shopt -u extglob

开启之后,以下5个模式匹配操作符将被识别:

?(pattern-list) - 所给模式匹配0次或1次; 

*(pattern-list) - 所给模式匹配0次以上包括0次;

+(pattern-list) - 所给模式匹配1次以上包括1次; 

@(pattern-list) - 所给模式仅仅匹配1次;

!(pattern-list) - 不匹配括号内的所给模式。 !():与@()相反



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有