day02

陈鑫


1.命令帮助

(1)help 

例:su    --help 

        ls    --help

[root@cxbb /]# ls --help
Usage: ls [OPTION]... [FILE]...
List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.

Mandatory arguments to long options are mandatory for short options too.
  -a, --all                  do not ignore entries starting with .
  -A, --almost-all           do not list implied . and ..


[root@cxbb /]# ls --help
Usage: ls [OPTION]... [FILE]...      
=格式是什么
List information about the FILEs (the current directory by default). 
=这个命令是干什么的(ls     列出文件有哪些信息  )
Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.

Mandatory arguments to long options are mandatory for short options too.
  -a, --all                  do not ignore entries starting with .
  -A, --almost-all           do not list implied . and ..
=命令  ls   对应的选项有哪些

命令格式:su [options] [username]   [  ]里面可以省略

(2)man manual    (阅读后按 q  退出 )


ls

ls  列出显示目录文件中的数据文件

[root@cxbb ~]# ls
aaa  aaa,k  aaa.lnk  anaconda-ks.cfg  bbb  initial-setup-ks.cfg

例:列出 / 目录的文件

法一:

[root@cxbb ~]# ls /
aaalnk  boot  etc   lib    media  opt   root  sbin  sys  usr
bin     dev   home  lib64  mnt    proc  run   srv   tmp  var

法二:

[root@cxbb ~]# cd /
[root@cxbb /]# ls
aaalnk  boot  etc   lib    media  opt   root  sbin  sys  usr
bin     dev   home  lib64  mnt    proc  run   srv   tmp  var

ls  [options]...  [FILENAME]...

     选项            文件名     (多个文件名)   可以列出多个文件名

[root@cxbb /]# ls / /root
/:
aaalnk  boot  etc   lib    media  opt   root  sbin  sys  usr
bin     dev   home  lib64  mnt    proc  run   srv   tmp  var

/root:
aaa  aaa,k  aaa.lnk  anaconda-ks.cfg  bbb  initial-setup-ks.cfg

+

-l      以长格式显示文件信息(可以把文件属性列出显示)ls -l==ll(仅在Redhat 发行的版本可行)

-d    指定目录文件列出指定目录文件的信息

-h    可以对文件大小转换单位(文件数据大小比较大才会转换

-a/-A 列出所有文件包含隐藏文件(可以显示当前目录 和 上一级目录

-i     显示文件的inode节点号


+

-l      以长格式显示文件信息(可以把文件属性列出显示)ls -l==ll(仅在Redhat 发行的版本可行)

root@cxbb /]# ls
aaalnk  boot  etc   lib    media  opt   root  sbin  sys  usr
bin     dev   home  lib64  mnt    proc  run   srv   tmp  var
[root@cxbb /]# ls -l
total 28
lrwxrwxrwx.   1 root root    3 Nov 22 04:56 aaalnk -> aaa
lrwxrwxrwx.   1 root root    7 Jun 21  2021 bin -> usr/bin
dr-xr-xr-x.   5 root root 4096 Nov 20 02:20 boot
drwxr-xr-x.  20 root root 3200 Nov 22 16:58 dev
drwxr-xr-x. 145 root root 8192 Nov 22 17:02 etc
drwxr-xr-x.   3 root root   20 Nov 20 02:12 home

-d    指定目录文件列出指定目录文件的信息

[root@cxbb ~]# ls -d
.                          . =当前目录

[root@cxbb ~]# ls -dl
dr-xr-x---. 5 root root 4096 Nov 23 00:03 .
[root@cxbb ~]# ls -d -l
dr-xr-x---. 5 root root 4096 Nov 23 00:03 .

与不加 -d 的区别:

ls :列出文件夹的所有文件(数据文件)

ls  -d :指定目录文件列出指定目录文件的信息

通俗一点相当于右击文件查看文件各个属性(名字而已

ls  -dl 或 ls  -d  -l  或 ll  -d :~~~~~~~~~~~~~查看文件的具体属性内容是什么

例:查看 / 目录属性

[root@cxbb ~]# ls  -dl /
dr-xr-xr-x. 17 root root 238 Nov 22 04:56 /

      查看  /  目录下所有文件的属性

[root@cxbb ~]# ls -l /
total 24
lrwxrwxrwx.   1 root root    3 Nov 22 04:56 aaalnk -> aaa
lrwxrwxrwx.   1 root root    7 Jun 21  2021 bin -> usr/bin
dr-xr-xr-x.   5 root root 4096 Nov 20 02:20 boot
drwxr-xr-x.  20 root root 3200 Nov 22 16:58 dev

-h    可以对文件大小转换单位

[root@cxbb ~]# ls -l  
total 12
-rw-r--r--. 2 root root    0 Nov 22 04:53 aaa
lrwxrwxrwx. 1 root root    3 Nov 22 04:55 aaa,k -> aaa
-rw-r--r--. 2 root root    0 Nov 22 04:53 aaa.lnk
-rw-------. 1 root root 1207 Nov 20 02:14 anaconda-ks.cfg


[root@cxbb ~]# ls  -l  -h
total 12K
-rw-r--r--. 2 root root    0 Nov 22 04:53 aaa
lrwxrwxrwx. 1 root root    3 Nov 22 04:55 aaa,k -> aaa
-rw-r--r--. 2 root root    0 Nov 22 04:53 aaa.lnk
-rw-------. 1 root root 1.2K Nov 20 02:14 anaconda-ks.cfg

-a/-A 列出所有文件包含隐藏文件(文件名前有点标记的)

(a 使当前目录和上一级目录)(A只显示正常文件和隐藏文件)         

可以显示当前目录 和 上一级目录

[root@cxbb ~]# ls -l -a
total 40
dr-xr-x---.  5 root root  274 Nov 23 00:23 .
dr-xr-xr-x. 17 root root  238 Nov 22 04:56 ..
-rw-r--r--.  2 root root    0 Nov 22 04:53 aaa
lrwxrwxrwx.  1 root root    3 Nov 22 04:55 aaa,k -> aaa
-rw-r--r--.  2 root root    0 Nov 22 04:53 aaa.lnk


[root@cxbb ~]# ls -l
total 12
-rw-r--r--. 2 root root    0 Nov 22 04:53 aaa
lrwxrwxrwx. 1 root root    3 Nov 22 04:55 aaa,k -> aaa
-rw-r--r--. 2 root root    0 Nov 22 04:53 aaa.lnk

家目录和/目录 所有文件包含隐藏文件 是不一样的


[root@cxbb /]# ls -l -a
total 24
dr-xr-xr-x.  17 root root  238 Nov 22 04:56 .
dr-xr-xr-x.  17 root root  238 Nov 22 04:56 ..
lrwxrwxrwx.   1 root root    3 Nov 22 04:56 aaalnk -> aaa
lrwxrwxrwx.   1 root root    7 Jun 21  2021 bin -> usr/bin
dr-xr-xr-x.   5 root root 4096 Nov 20 02:20 boot
drwxr-xr-x.  20 root root 3200 Nov 22 16:58 dev
drwxr-xr-x. 145 root root 8192 Nov 22 17:02 etc
drwxr-xr-x.   3 root root   20 Nov 20 02:12 home
lrwxrwxrwx.   1 root root    7 Jun 21  2021 lib -> usr/lib
lrwxrwxrwx.   1 root root    9 Jun 21  2021 lib64 -> usr/lib64


[root@cxbb ~]# ls -l -a  =   [root@cxbb /]# ls -l -a ~

total 40
dr-xr-x---.  5 root root  274 Nov 23 00:23 .
dr-xr-xr-x. 17 root root  238 Nov 22 04:56 ..
-rw-r--r--.  2 root root    0 Nov 22 04:53 aaa
lrwxrwxrwx.  1 root root    3 Nov 22 04:55 aaa,k -> aaa
-rw-r--r--.  2 root root    0 Nov 22 04:53 aaa.lnk
-rw-------.  1 root root 1207 Nov 20 02:14 anaconda-ks.cfg
-rw-------.  1 root root  813 Nov 23 00:19 .bash_history
-rw-r--r--.  1 root root   18 Aug 13  2018 .bash_logout
-rw-r--r--.  1 root root  176 Aug 13  2018 .bash_profile
-rw-r--r--.  1 root root  176 Aug 13  2018 .bashrc

-i     显示文件的inode节点号(不是通过文件名区分文件,而是通过节点号)

[root@localhost ~]# ll -i
total 12
35245034 -rw-r--r--. 2 root root    0 Nov 22 04:53 aaa
35245054 lrwxrwxrwx. 1 root root    3 Nov 22 04:55 aaa,k -> aaa
35245034 -rw-r--r--. 2 root root    0 Nov 22 04:53 aaa.lnk

     ①      ②   ③    ④    ⑤   ⑥   ⑦   ⑧          ⑨
-rw-r--r--. 1 root root 1479 Nov 20 02:20 initial-setup-ks.cfg
linux一共有7种文件类型: - 普通文本文件(.txt)   d  目录文件(文件夹)   

l   软连接  (快捷方式) b块设备文件   c字符设备   p  管道文件  

s  socket 套件文件

第一列

第一个字符:标记文件类型

2-11字符:      文件的权限标识位 r    w     x
                             可读  可写  可执行

第二列

硬链接次数

第三列

所属用户

第四列

所属组

第五列

大小

第六-八列

创建时间、修改时间

第九列

文件名

软连接 : 单独的文本文件,链接文件的数据存储区记录的是原文件的路径

特点:通过当前路径能够更方便快速匹配到其他路径下的文件

应用:删除快捷方式对源文件没有影响,但是删除源文件则快捷方式不能使用

创建对象:可以对文本文件,目录文件创建,也可以跨文件系统创建

创建快捷方式:

ln [OPTION]... TARGET   LINK_NAME

                                      (快捷方式

touch   FILENAME    创建一个文本文件

mkdir   DIRNAME     创建一个目录文件

rm     FILENAME    删除文本文件

rm   -r    DIRNAME  删除目录文件 (无论是文本文件,还是目录文件都可以删除)

例:

ln [OPTION]... TARGET   LINK_NAME

                  (目标对象)(快捷方式

目标对象:原文件,现有的文件

touch   FILENAME    创建一个文本文件

mkdir   DIRNAME     创建一个目录文件

[root@localhost ~]# mkdir   aaa
[root@localhost ~]# ll
total 12
drwxr-xr-x. 2 root root    6 Nov 23 22:18 aaa
-rw-r--r--. 1 root root    0 Nov 22 04:53 aaa.lnk
-rw-------. 1 root root 1207 Nov 20 02:14 anaconda-ks.cfg
-rw-r--r--. 1 root root    4 Nov 22 05:05 bbb
-rw-r--r--. 1 root root 1479 Nov 20 02:20 initial-setup-ks.cfg
[root@localhost ~]# touch bbb
[root@localhost ~]# ll
total 12
drwxr-xr-x. 2 root root    6 Nov 23 22:18 aaa
-rw-r--r--. 1 root root    0 Nov 22 04:53 aaa.lnk
-rw-------. 1 root root 1207 Nov 20 02:14 anaconda-ks.cfg
-rw-r--r--. 1 root root    4 Nov 23 22:19 bbb
-rw-r--r--. 1 root root 1479 Nov 20 02:20 initial-setup-ks.cfg

rm     FILENAME    删除文本文件

rm   -r    DIRNAME  删除目录文件 (无论是文本文件,还是目录文件都可以删除)

[root@localhost ~]# ll
total 12
lrwxrwxrwx. 1 root root    3 Nov 22 04:55 aaa,k -> aaa
-rw-r--r--. 1 root root    0 Nov 22 04:53 aaa.lnk
-rw-------. 1 root root 1207 Nov 20 02:14 anaconda-ks.cfg
-rw-r--r--. 1 root root    4 Nov 22 05:05 bbb
-rw-r--r--. 1 root root 1479 Nov 20 02:20 initial-setup-ks.cfg
[root@localhost ~]# rm  aaa,k
rm: remove symbolic link 'aaa,k'? y
[root@localhost ~]# ll
total 12
-rw-r--r--. 1 root root    0 Nov 22 04:53 aaa.lnk
-rw-------. 1 root root 1207 Nov 20 02:14 anaconda-ks.cfg

eg:

#touch      /aaa

#ln    -s    /aaa     /aaa.lnk      对/下的aaa文件创建一个快捷方式放在/目录下

注:当目标文件和链接文件(两个单独的文件)不在同一路径时必须通过绝对路径创建

[root@localhost /]# touch  aaa
[root@localhost /]# ll
total 24
-rw-r--r--.   1 root root    0 Nov 23 23:08 aaa


[root@localhost /]# ln -s aaa  aaa.lnk
                   (快捷方式文件名)(.lnk后缀可省略)
[root@localhost /]# ll
total 24
-rw-r--r--.   1 root root    0 Nov 23 23:08 aaa
lrwxrwxrwx.   1 root root    3 Nov 23 23:10 aaa.lnk -> aaa

[root@localhost ~]# mkdir  /root/d1
[root@localhost ~]# ll /root
total 12
drwxr-xr-x. 2 root root    6 Nov 23 22:18 aaa
-rw-r--r--. 1 root root    0 Nov 22 04:53 aaa.lnk
-rw-------. 1 root root 1207 Nov 20 02:14 anaconda-ks.cfg
-rw-r--r--. 1 root root    4 Nov 23 22:19 bbb
drwxr-xr-x. 2 root root    6 Nov 24 02:02 d1


 


硬链接:多个文件名指向同一个inode节点号,对应的只是一个文件(只对于文本文件可以创建)

作用:防止误删除(将文件名进行备份)

应用:一个文件默认硬链接次数最小为1,彻底删除一个硬链接,需要确保硬链接次数为零。

          linux目录文件硬链接次数默认为2. 原因除了目录文件自身名字,我们可以通过进行匹配

drwxr-xr-x. 2 root root    6 Nov 23 22:18 aaa
-rw-r--r--. 1 root root    0 Nov 22 04:53 aaa.lnk

linux目录文件硬链接次数默认为2.原因:

目录文件:
drwxr-xr-x. 2 root root    6 Nov 23 22:18 aaa



[root@localhost ~]# cd  aaa/
[root@localhost aaa]# cd  /root/aaa
[root@localhost aaa]# ll -d /root/aaa
drwxr-xr-x. 2 root root 6 Nov 23 22:18 /root/aaa
[root@localhost aaa]# ll -d .
drwxr-xr-x. 2 root root 6 Nov 23 22:18 .

创建对象:仅对文本文件可以创建,不支持跨文件系统

创建快捷方式:

touch   FILENAME    创建一个文本文件

#ln       /aaa     /aaa.lnk      对/下的aaa文件创建一个快捷方式放在/目录下

​​​​​​​

如何区分软连接和硬链接

以 l 开头的是软连接,相当于快捷方式

以 - 开头的是硬链接​​​​​​​

eg:

[root@localhost ~]# touch /root/file
[root@localhost ~]# ln   -s  /root/file  /file.lnk
[root@localhost ~]# ll /
total 28
lrwxrwxrwx.   1 root root   10 Nov 24 20:18 file.lnk -> /root/file




[root@localhost ~]# ln    /root/file    /newfile
[root@localhost ~]# ll /
total 28

-rw-r--r--.   2 root root    0 Nov 24 20:16 newfile

​​​​​​​

补:命令输出前几个字母+tab:显示相关所有命令

cd  (继day01)

[root@cxbb ~]# cd /root
[root@cxbb ~]# cd /home
[root@cxbb home]# cd /root
[root@cxbb ~]# 

课后作业

eg :

在系统/root目录下创建file 文件

(1)对file文件创建一个快捷方式file. lnk 放在/目录下;

(2)对file文件创建一个硬链接文件位newfile放在/目录下;

[root@localhost ~]# touch /root/file
[root@localhost ~]# ln   -s  /root/file  /file.lnk
[root@localhost ~]# ll /
total 28
lrwxrwxrwx.   1 root root   10 Nov 24 20:18 file.lnk -> /root/file




[root@localhost ~]# ln    /root/file    /newfile
[root@localhost ~]# ll /
total 28

-rw-r--r--.   2 root root    0 Nov 24 20:16 newfile

  

新手小白,请多多指教

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值