linux基础命令(目录,创建)

277 阅读7分钟

这篇主要说一下用于和目录相关的的几个命令,用于查看切换显示目录

1.pwd命令

pwd命令主要有两个: pwd和pwd -p

[root@localhost ~]# pwd (直接输入pwd,linux会显示出你的当前所在路径)
/root
[root@localhost ~]# pwd -p (显示出软链接文件夹的真是路径,因为现在还没说道软链接,后面在补)
-bash: pwd: -p: 无效选项
pwd: 用法:pwd [-LP]
[root@localhost ~]# 

2.cd命令

命令效果
cd cd ~若不指定目标位置,切换到当前用户的宿主目录(家目录)
cd -到前一次目录
一个点号“.”开头表示以当前的工作目录作为起点(已点开头的是)
两个点号“..”开头表示以当前目录的上一级目录(父目录)作为起点
“~用户名”形式开头表示以指定用户的宿主目录(家目录)作为起点
"."开头文件表示隐藏文件

上面的cd或者cd~命令分为root用户的家目录和普通用户的家目录

root用户家目录位置普通用户家目录位置
根目录下/root/home/普通用户同名的文件夹/

3.ls命令

文件格式:ls [选项] [文件或目录… ]

  • -l 已长格式显示文件和目录列表 ll=ls -l
  • -a 显示全部包括隐藏文件
  • -A 显示全部文件或隐藏文件,但不包括 . 和..
  • -d 只显示当前目录
  • -h 友好显示文件大小
  • -R 递归显示该目录及该目录的子目录下的所有内容
  • --color 显示颜色
  • -S 按从大到小排序

ls命令在身产环境中千万不可以直接使用,文件过多会导致系统直接卡死,可以加上筛选项进行,例如添加通配符或者后缀指令

下面一一讲解:

ls -l(也可以直接输入ll)

image.png

输入ll,会显示文件权限,文件硬链接数,最近修改日期和文件名称等文件一下信息

ls-a

image.png

all的缩写,显示所有的文件,包括隐藏文件(以.开头的文件)

ls-A

image.png

显示全部文件或隐藏文件,但不包括 . (当前目录)和..(当前目录的上一级目录

ls -d(特殊,需要配合-l使用)

image.png

不展开目录,只显示目录自身,一般与-l配合使用以显示目录自身的属性信息(只显示当前目录的内容)

ls -R(大写R)

image.png

递归显示该目录及该目录的子目录下的所有内容

ls-S(大写S)

image.png

从大到小排序文件

4.什么是通配符?(可以配合ls命令以及多种命令使用)

首先我们要了解什么是文件名通配符

Shell提供了一套完整的字符串模式匹配规则,或者称之为元字符,当s h e l l遇到上述字符时,就会把它们当作特殊字符,而不是文件名中的普通字符,这样用户就可以用它们来匹配相应的文件名,我理解这可以称为通配符。

通配符有哪些?

符号效果
匹配一个字符 f?.txt
*匹配所有非隐藏的字符无论多长多短,但不匹配 "." 开头的文件,即隐藏文件
{1..10}1到10
{a..z}a b c ...z
{A..Z}A B C .....Z
[123]取其中之一有就显示没有也无所谓
[a-z]范围需要注意
[0-9]匹配数字范围(0123456789)
\转义符,表示原来的意思
[[:lower:]]小写字母表示 a-z
[[:upper:]]大写字母表示 A-Z
[^zhou]匹配列表中的所有字符以外的字符
[[:digit:]]任意数字,相当于0-9

题目

下面可以做几道题看看是否掌握了通配符 这里先给大家看一下文件夹内有什么内容,方便查看是否查找正确

image.png

1.显示所有以字母b开头的文件**

这里需要显示内容,需要用到ls的命令,而号可以达表多个字符,故答案为:

ls b*

image.png

2.显示所有后缀为txt的文件

ls *.txt

image.png

3.显示所有第二个是字母i的文件

ls ?i*

image.png

4.所有后缀为3个字母的文件

ls *.???

image.png 这里只是简单的几个通配符搭配ls(ll-s)命令的使用方法,后面需要举一反三进行应用

5.alias(别名)

优先级:绝对路径下的命令>别名>内部>hash>外部命令(先查找别名在查找内部命令,缓存最后外部)

临时修改 ,重启时失效,写进配置文件才可以永久保存。

创建别名:alias 命令别名 = ’命令‘

删除别名:unalias 别名命令

使用原始命令 :\加原始命令

创建别名

下面将虚拟网卡的命令修改别名为myvim

image.png

修改完成后,输入alias即可看到已经修改完成,这样下次输入的时候会更加快捷

需要注意的是,别名修改将在重启或关机后时效,想要永久修改,需要特殊操作

删除别名

image.png

[root@localhost ~]# unalias myvim(这里取消别名)
[root@localhost ~]# alias(输入alias查看别名)
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@localhost ~]# 
(这里可以看到,myvim别名已经没有了)

使用原始指令(在已经设置别名的情况下)

使用原始命令 :\加原始命令

image.png

这里可以看到,在已经设置别名后,只要输入\命令,就可以了

6.du(显示指定的目录或文件所占用的磁盘空间)

du [选项] [文件或目录… ]

选项说明
-a统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录
-h以更人性化的方式(默认以KB计数,但不显示单位)显示出统计结果
-s只统计所占用空间总的(Summary)大小,而不是统计每个子目录、文件的大小
--max-depth=n(-d 1)最大显示到第n层

6.mkdir(创建文件夹)

mkdir

mkdir [选项] 目录位置及名称…

创建单个文件夹(mkdir 文件夹名称)

image.png

递归创建文件夹(mkdir -p)

image.png

安装tree命令:yum install tree -y

7.硬链接与软链接

硬链接ln

硬连接 同一个文件取不同的名或者叫多个名字,不支持文件夹,创建一个连接数加一,多路径访问。

软连接 类似于windows里快捷方式,软连接,符号连接,使用绝对路径 格式:软链接 :ln [-s] 源文件或目录… 链接文件或目标位置

对比项

对比项硬连接软连接
本质本质是同一个文件本质不是同一个文件
inode相同不同
连接数创建新的硬链接,链接数会增加,删除硬链接,链接数减少删除新建不会改变
文件夹不支持支持
删除源文件只是链接数减一,但链接文件的访问不受影响无法访问连接文件
文件类型和源文件相同链接文件,和源文件无关
文件大小和源文件相同源文件的路径的长度

硬链接: ln [ ] 源文件或目录… 链接文件或目标位置

image.png


使用ll查看是否创建成功(这里操作失误,多创建了一次硬链接,看到硬链接数3个,说明创建成功)

image.png

软链接ln -s

ln -s

image.png

8.touch(创建新文件)

格式:touch 新文件…(可为空)

作用:touch 不会破坏已有文件 刷新时间 说道刷新时间,这里需要补充linux三种时间

简名全名中文名含义
atimeaccess time访问时间文件中的数据库最后被访问的时间 (不打开文件是不会刷新的)
mtimemodify time修改时间文件内容被修改的最后时间
ctimechange time变化时间文件的元数据发生变化。比如权限,所有者等

stat +文件名 =查看文件详细信息(包括三种时间)

实际操作

image.png