Linux常用命令-文件目录命令

  • Linux常用命令-文件目录命令已关闭评论
  • 89 次浏览
  • A+
所属分类:linux技术
摘要

1.1、ls命令:显示目录下的内容基本格式常用选项范例参考显示当前所在目录下所有文件。


1.目录命令

1.1、ls命令:显示目录下的内容

基本格式

[root@localhost ~]# ls [选项] [参数是文件名或目录名] 

常用选项

-a:显示所有文件。 --color=when。支持颜色输出,when的值默认是always(总显示颜色),never(不显示颜色)和auto(自动)。 -d:显示目录信息,并非目录下的文件。 -h:易读化显示。文件的大小按照KB,MB为单位显示。 -i:显示文件的i节点号。 -l:显示文件的详细信息。 

范例参考

显示当前所在目录下所有文件。

[root@localhost ~]# ls -a .    anaconda-ks.cfg  .bash_profile  install.log         .viminfo ..   .bash_history    .bashrc        install.log.syslog  .Xauthority abc  .bash_logout     .cshrc         .tcshrc 

显示目录或文件的i节点号。

[root@localhost ~]# ls -i install.log 130563 install.log [root@localhost ~]# ls -id abc/ 135261 abc/ 

显示所有文件或目录(除去隐藏文件目录)的详细信息。

[root@localhost ~]# ls -l 总用量 48 drwxr-xr-x. 2 root root  4096 5月   1 22:14 abc -rw-------. 1 root root  1283 4月   5 21:39 anaconda-ks.cfg -rw-r--r--. 1 root root 28250 4月   5 21:39 install.log -rw-r--r--. 1 root root  7572 4月   5 21:38 install.log.syslog 
  • drwxr-xr-x:代表文件或目录的权限。

  • 2:引用计数。文件的引用计数代表文件的硬链接个数,目录的引用计数代表目录下有多少个子目录。

  • root:属主。也就是文件属于哪个用户。

  • root:属组。也就是文件当前属主所在的有效组。

  • 4094:文件或目录的大小。

  • 5月 1 22:14:文件修改时间。文件数据或者状态修改都会更改这个时间,Linux中没有文件创建时间。

  • abc:文件名或目录名。

1.2、cd命令:切换所在目录

绝对路径:由根目录开始写起,一级一级写下去

相对路径:由当前目录开始写

基本格式

[root@localhost ~]# cd [参数] 

简化用法

简化符号 作用
~ 用户的家目录
- 上次所在的目录
. 当前目录
.. 上级目录

范例参考

切换至指定目录

[root@localhost ~]# cd /root/abc [root@localhost abc]# 

切换到上次所在目录

[root@localhost abc]# cd - /root [root@localhost ~]#  

1.3、pwd命令:查询当前所在目录

基本格式

[root@localhost abc]# pwd 

范例参考

查询当前所在目录。

[root@localhost ~]# pwd /root 

1.4、mkdir命令:创建空目录

基本格式

[root@localhost ~]# mkdir [选项] 目录名 

常见选项

-p:递归创建所需目录 

范例参考

在root目录下创建目录/abc/def。

[root@localhost ~]# mkdir -p /root/abc/def [root@localhost ~]# ls /root/abc def 

1.5、rmdir命令:删除空目录

基本格式

[root@localhost ~]# rmdir [选项] 目录名 

常见选项

-p:递归删除空目录 

范例参考

删除root目录下/abc/def

[root@localhost ~]# rmdir -p /root/abc/def rmdir: 删除目录 "/root" 失败: 目录非空 [root@localhost ~]# ls anaconda-ks.cfg  install.log  install.log.syslog 

删除root目录失败是因为root目录是非空目录。那么就是说rmdir命令只能删除空目录当目录下一旦有文件或目录就无法删除,就显得十分笨拙。因此在日常操作中很少使用该命令,通常都是使用rm-rf命令来删除文件或目录的。提醒在日常工作中一旦删除就无法恢复,慎用

2.文件命令

2.1、touch命令:创建空文件或修改文件时间

基本格式

[root@localhost ~]# touch 文件名 

常见选项

-a:设置文件的读取时间记录 -c:不创建新文件 -d:设置时间与日期 -m:设置文件的修改时间记录 -t:设置文件的时间记录 

范例参考

创建一个指定名称的空文件

[root@localhost ~]# touch 123 [root@localhost ~]# ll 总用量 44 -rw-r--r--. 1 root root     0 5月   3 01:16 123 

2.2、cat命令:查看文件内容

基本格式

[root@localhost ~]# [选项] 文件名 

常见选项

-A:相当于-vET选项的组合,用于列出所有隐藏符号 -E:列出每行结尾的回车符 -n:显示行号 -T:把Tab键用^I显示出来 -v:列出特殊字符 

范例参考

列出每行结尾的回车符

[root@localhost ~]# cat -E 123 11111111111111$ 22222222222222$ 33333333333333$ 	44444444444444$ 

文件内容Tab建用^I显示出来

[root@localhost ~]# cat -T 123 11111111111111 22222222222222 33333333333333 ^I44444444444444 

查看内容并显示行号

[root@localhost ~]# cat -n 123      1	11111111111111      2	22222222222222      3	33333333333333      4		44444444444444 

2.3、stat命令:查看文件详细的状态信息

基本格式

[root@localhost ~]# stat 文件名 

常见选项

-f:显示文件系统信息 -t:以简介方式查看 

范例参考

查看指定文件的状态信息

[root@localhost ~]# stat anaconda-ks.cfg    File: "anaconda-ks.cfg"   Size: 1283      	Blocks: 8          IO Block: 4096   普通文件 Device: 805h/2053d	Inode: 135259      Links: 1 Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root) Access: 2024-04-05 21:39:58.026999952 +0800 #最近访问时间 Modify: 2024-04-05 21:39:58.291999952 +0800 #数据修改时间 Change: 2024-04-05 21:40:02.693999951 +0800 #状态修改时间 

查看指定文件的文件系统信息

[root@localhost ~]# stat -f anaconda-ks.cfg    File: "anaconda-ks.cfg"     ID: 1db05c0d777d32df Namelen: 255     Type: ext2/ext3 Block size: 4096       Fundamental block size: 4096 Blocks: Total: 4044778    Free: 3507986    Available: 3300857 Inodes: Total: 1036320    Free: 967888 

简洁方式查看指定文件的状态信息

[root@localhost ~]# stat -t anaconda-ks.cfg  anaconda-ks.cfg 1283 8 8180 0 0 805 135259 1 0 0 1712324398 1712324398 1712324402 4096 

2.4、more命令:分屏显示

基本格式

[root@localhost ~]# more 文件名 

常见选项

-数字:设置每屏显示最大行数 +数字:设置从指定的行开始显示内容 +/关键词:从指定关键词开始显示文件内容 

交互命令

命令 作用
空格键 向下翻页
b 向上翻页
回车键 向下滚动一行
/字符串 搜索指定的字符串
q 退出

范例参考

分屏显示anaconda-ks.cfg文件,每屏最大行数10行

[root@localhost ~]# more -10 anaconda-ks.cfg  # Kickstart file automatically generated by anaconda.  #version=DEVEL install cdrom lang zh_CN.UTF-8 keyboard us network --onboot no --device eth0 --bootproto dhcp --noipv6 rootpw  --iscrypted $6$ND00jmZXcRSUv.ex$XbckW9Mr/n3gP.HR5E79PUPd4VERUMQCvrRqp2EwuBvjL0 dWA3qP8vzXTtQmSDDzq3ji5eJ3aRYGI5vrkTAAs/ --More--(23%) 

2.5、less命令:分行显示

基本格式

[root@localhost ~]# less 文件名 

常见选项

-f:强制打开文件 -e:文件显示结束后自动退出 -m:显示阅读进度百分比 -N:显示文件内容时带行号 

范例参考

查看文件anaconda-ks.cfg,并且显示阅读进度百分比和行号

[root@localhost ~]# less -10mN anaconda-ks.cfg         1 # Kickstart file automatically generated by anaconda.       2        3 #version=DEVEL       4 install       5 cdrom       6 lang zh_CN.UTF-8       7 keyboard us       8 network --onboot no --device eth0 --bootproto dhcp --noipv6       9 rootpw  --iscrypted $6$ND00jmZXcRSUv.ex$XbckW9Mr/n3gP.HR5E79PUPd4VERUMQCvrRqp2      9 EwuBvjL0dWA3qP8vzXTtQmSDDzq3ji5eJ3aRYGI5vrkTAAs/      10 firewall --service=ssh      11 authconfig --enableshadow --passalgo=sha512      12 selinux --enforcing      13 timezone Asia/Shanghai      14 bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb qui     14 et"      15 # The following is the partition information you requested      16 # Note that any partitions you deleted are not expressed      17 # here so unless you clear all partitions first, this is      18 # not guaranteed to work      19 #clearpart --none      20       21 #part /boot --fstype=ext4 --size=200 anaconda-ks.cfg 58% 

2.6、head命令:显示文件开头

基本格式

[root@localhost ~]# head [选项] 文件名 

常见选项

-n 行数:从文件头开始,显示指定行数 -v:显示文件名 

范例参考

显示anaconda-ks.cfg文件开头,并且设置显示前6行和文件名

[root@localhost ~]# head -6v anaconda-ks.cfg  ==> anaconda-ks.cfg <== # Kickstart file automatically generated by anaconda.  #version=DEVEL install cdrom lang zh_CN.UTF-8 

2.7、tail命令:显示文件结尾

基本格式

[root@localhost ~]# tail [选项] 文件名 

常见选项

-n 行数:从文件结尾开始,显示指定行数 -f:监听文件的新增内容 

范例参考

显示anaconda-ks.cfg文件结尾,并且设置显示后8行

[root@localhost ~]# tail -8 anaconda-ks.cfg sgpio device-mapper-persistent-data samba-winbind certmonger pam_krb5 krb5-workstation perl-DBD-SQLite