最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

Linux文件目录类命令汇总大全

XAMPP相关 admin 273浏览 0评论

1、pwd:显示当前工作目录的绝对路径

1)基本语法

pwd

2)案例

[root@testx 桌面]# pwd
/root/桌面

2、ls:列出目录的内容

1)基本语法

ls [选项] [目录或是文件]

2)选项说明

选项说明
-a全部文件,连同隐藏文件(开头为.的文件)一起列出来(常用)
-l长数据串列出,包含文件的属性与权限等数据(常用),等价于 ll 命令
目录参数非必须命令后面的目录可以省略,省略时,查看的是当前目录

3)显示说明

每行出的信息依次是:

  • 文件类型与权限
  • 连接数
  • 文件属主
  • 文件属组
  • 文件大小(byte)
  • 创建或最近修改的时间
  • 名字

4)案例

(1)查看当前目录所有的内容信息

[root@testx a]# ls -al
总用量 4
drwxr-xr-x.  4 root root   29 5月   1 11:32 .
dr-xr-x---. 15 root root 4096 4月  30 23:20 ..
drwxr-xr-x.  2 root root    6 5月   1 11:32 .1.txt
drwxr-xr-x.  3 root root   15 4月  30 17:47 b

(2)查看目录/usr 的文件信息

[root@testx a]# ls /usr/
bin  etc  games  include  lib  lib64  libexec  local  sbin  share  src  tmp

3、cd:切换目录

1)基本语法

cd [参数]

2)参数说明

参数功能
cd 绝对路径切换路径
cd 相对路径切换路径
cd ~或 cd回到自己的家目录
cd –回到上一次所在目录,可以用来在 2 个目录来回跳转
cd ..回到当前目录的上一级目录
cd -P跳转到实际物理路径,而非快捷方式路径

3)案例

(1)使用绝对路径切换到/usr/local 目录

[root@testx 桌面]# cd /usr/local/

(2)使用相对路径切换到“公共的”目录

如下,当前在/root 目录,我们想到 root 目录下面的桌面目录,那么可以直接使用cd 桌面即可,这种情况下使用相对路径更方便,相对路径是相对于当前目录来说的。

[root@testx ~]# pwd
/root
[root@testx ~]# ls
15     2.txt  anaconda-ks.cfg       公共  视频  文档  音乐
1.txt  a      initial-setup-ks.cfg  模板  图片  下载  桌面
[root@testx ~]# cd 桌面
[root@testx 桌面]#

(3)回到当前用户自己的家目录

如下,当前是 root 用户,目前在/usr/local目录,执行 cd 直接回到了 root 用户自己的目录,即/root目录

[root@testx local]# pwd
/usr/local
[root@testx local]# cd
[root@testx ~]# pwd
/root

(4)cd – 回到上一次所在目录

下面命令,先通过 cd 跳到/usr/local 目录,然后又通过 cd 跳到/root 目录,执行 cd – 回到上一次所在的目录,即/usr/local 目录,多次执行 cd -,可以在两个目录之间来回切换,还是很实用的一个命令

# 跳到/usr/local目录
[root@testx local]# cd /usr/local/
[root@testx local]# pwd
/usr/local
# 跳到/root目录
[root@testx local]# cd /root
# 回到上一次的目录,即/usr/local目录
[root@testx ~]# cd -
/usr/local
[root@testx local]# cd -
/root
[root@testx ~]# cd -
/usr/local
[root@testx local]# cd -
/root
[root@testx ~]# cd -
/usr/local

(5)cd ..回到上一级目录

下面命令,从/usr/local 目录通过 cd ..回到上一级目录,即/usr 目录

[root@testx local]# cd /usr/local/
[root@testx local]# pwd
/usr/local
[root@testx local]# cd ..
[root@testx usr]# pwd
/usr

4、mkdir:创建一个新的目录

1)基本语法

mkdir [选项] 要创建的目录

2)选项说明

选项说明
-p创建多层目录

3)案例

(1)创建一个目录 test

[root@testx ~]# mkdir test

image-20220501121413210](img/image-20220501121413210.png)

(2)创建多级目录

递归创建多级目录需要加-p 选项,否则,父目录不存在时会报错

[root@testx ~]# mkdir a/b/c/d
mkdir: 无法创建目录"a/b/c/d": 没有那个文件或目录
[root@testx ~]# mkdir -p a/b/c/d

5、rmdir:删除一个空目录

1)基本语法

rmdir 要删除的空目录

2)案例

(1)删除一个空目录

[root@testx ~]# rmdir c

(2)删除非空目录会失败

[root@testx ~]# rmdir a
rmdir: 删除 "a" 失败: 目录非空

6、touch:创建空文件

1)基本语法

touch 文件名称

2)案例

当前目录创建 1.txt 文件

[root@testx ~]# touch 1.txt

7、cp:复制文件或目录

1)基本语法

复制 source 文件到 dest

cp [选项] source dest

2)选项说明

选项说明
-r递归复制整个文件夹

3)参数说明

参数说明
source源文件
dest目标文件

4)经验技巧

强制覆盖不提示的方法:\cp,因为 cp 命令是cp -i的别名,-i选项的作用是当出现文件覆盖的时候需要提示用户选择是否覆盖,这也是为了安全起见,而\命令可以按照命令原始的方式运行。

5)案例

(1)复制文件

# 当前目录创建1.txt文件
[root@testx ~]# touch 1.txt
# 将1.txt文件复制到/tmp/目录
[root@testx ~]# cp 1.txt /tmp/

(2)递归复制整个文件夹

# 创建目录a
[root@testx ~]# mkdir a
# 在a目录中创建2个txt文件
[root@testx ~]# touch a/1.txt
[root@testx ~]# touch a/2.txt
# 查看a目录内容
[root@testx ~]# ls a
1.txt  2.txt
# 递归复制a目录所有文件到b目录
[root@testx ~]# cp -r a b
# 查看b目录内容
[root@testx ~]# ls b
1.txt  2.txt

(3)\cp:复制,覆盖不提示

# 当前目录创建1.txt文件
[root@testx ~]# touch 1.txt
# 将1.txt复制到/tmp目录
[root@testx ~]# cp 1.txt /tmp/
# 将1.txt复制到/tmp目录,由于已存在,会提示是否覆盖?
[root@testx ~]# cp 1.txt /tmp/
cp:是否覆盖"/tmp/1.txt"?y
# 使用\cp复制,存在的情况下,会直接覆盖
[root@testx ~]# \cp 1.txt /tmp/

8、rm:删除文件或目录

1)基本语法

删除文件或目录

rm [选项] 文件1 文件2 [文件N...]

2)选项说明

选项说明
-r递归删除目录中所有内容
-f强制执行删除操作,不会提示用户是否确认删除
-v显示命令的详细执行过程

3)案例

(1)删某个文件

# 创建2个txt文件
[root@testx ~]# touch 1.txt 2.txt
# 查看目录内容,2个文件已创建好了
[root@testx ~]# ls
1.txt  2.txt  公共  模板  视频  图片  文档  下载  音乐  桌面
# 使用rm删除1.txt,会提示用户是否确认删除,输入y即可删除
[root@testx ~]# rm 1.txt
rm:是否删除普通空文件 "1.txt"?y
# 删除2.txt,输入n,表示不同意删除
[root@testx ~]# rm 2.txt
rm:是否删除普通空文件 "2.txt"?n
# 使用rm -f可以强制删除,不会提示确认信息
[root@testx ~]# rm -f 2.txt

(2)递归删除目录所有内容

# 递归创建a/b/c/d目录
[root@testx ~]# mkdir -p a/b/c/d
# 递归强制删除a目录及内部所有内容
[root@testx ~]# rm -rf a

(3)删除多个文件,且输出提示信息

# 创建3个目录
[root@testx ~]# mkdir a1 a2 a3
# 递归&强制&输出删除信息,删除3个目录
[root@testx ~]# rm -rfv a1 a2 a3
已删除目录:"a1"
已删除目录:"a2"
已删除目录:"a3"

(4)*通配符删除

**rm -rf /***:此命令慎用,否则永无回头之日。

# 创建3个目录:a1,a2,a3
[root@testx ~]# mkdir a1 a2 a3
# ls查看目录信息,3个目录创建好了
[root@testx ~]# ls
a1  a2  a3  公共  模板  视频  图片  文档  下载  音乐  桌面
# 强制&递归删除以文件名称以a开头的所有文件
[root@testx ~]# rm -rf a*
# ls查看目录信息,3个a开头的文件都被删掉了
[root@testx ~]# ls
公共  模板  视频  图片  文档  下载  音乐  桌面

9、mv:移动文件与目录或重命名

1)基本语法

mv oldNameFile newNameFile(重命名文件)
mv /temp/movefile /targetFolder (移动文件)

2)案例

(1)重命名

将 1.txt 重命名为 2.txt

[root@testx a]# mv 1.txt 2.txt

(2)移动文件

# 当前目录创建1.txt文件
[root@testx a]# touch 1.txt
# 当前目录创建a目录
[root@testx a]# mkdir a
# 查看当前目录内容
[root@testx a]# ls
1.txt  a
# 将1.txt文件移到a目录中
[root@testx a]# mv 1.txt a
# 查看目录a的内容,可以看到有1.txt了
[root@testx a]# ls a
1.txt

(3)mv a b

  • 若 a 和 b 都是目录,b 不存在时,相当于把 a 目录命令为 b 目录
  • 若 a 和 b 都是目录,b 存在的时,相当于把 a 目录移动到 b 目录中

10、cat:查看文件内容

1)基本语法

cat [选项] 要查看的文件

2)选项说明

选项说明
-n显示所有行的行号,也包含空行

3)经验技巧

一般查看比较小的文件,一屏幕能显示全的。

4)案例

[root@testx ~]# cat 1.txt
个人博客:http://www.itsoku.com
上面有很多java资料和精品文章
欢迎大家访问
[root@testx ~]# cat -n 1.txt
     1 个人博客:http://www.itsoku.com
     2 上面有很多java资料和精品文章
     3 欢迎大家访问

11、more:文件内容分屏查看器

适合查看内容超过一个屏幕的文件,支持上下翻页查看文件内容。

more 命令是一个基于 VI 编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容,more 命令中内置了若快捷键,详见操作说明。

1)基本语法

more 要查看的文件

2)操作说明

操作说明
空白键(space)向下翻一页
b向上翻一页
Enter向下翻【一行】
q代表立刻离开 more,不再显示该文件内容
=输出当前行的行号
:f输出文件名和当前行的行号

3)示例

使用 more 查看 2.txt 文件内容

[root@testx ~]# more 2.txt

12、less:分屏显示文件内容

less 指令用来分屏查看文件内容,它的功能与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端,less 指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要去加载的内容,对于显示大型文件具有较高的效率。

1)基本语法

less 需要查看的文件

2)操作说明

操作说明
空白键(space)向下翻动一页
[pagedown] 或 f上下翻动一页
[pageup] 或 b向上翻动一页
/字符串向下搜寻【字符串】的功能;n:向下查找;N:向上查找
?字符串向上搜索【字符串】的功能,n:向上查找,N:向下查找
q离开 less 这个程序

3)经验技巧

用 SecureCRT 时候[pagedown]和[pageup]可能会出现无法识别的问题

4)案例

使用 less 查看 2.txt 的内容,这个文件比较大

[root@testx ~]# less 2.txt

13、echo:输出内容到控制台

1)基本语法

echo [选项] [输出内容]

选项:

-e:支持反斜线的字符转换

控制字符作用
\\输出\本身
\n换行符
\t制表符,也就是 Tab 键

2)案例

[root@testx ~]# echo "hello\tworld"
hello\tworld
[root@testx ~]# echo -e "hello\tworld"
hello world
[root@testx ~]# echo -e "hello\nworld"
hello
world

14、head:显示文件头部内容

head 用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前 10 行内容。

1)基本语法

head 文件 (功能描述:查看文件头10行内容)
head -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)

2)选项说明

选项功能
-n 行数指定显示头部内容的行数

3)案例

使用 head 命令查看 1.txt 前 2 行内容

[root@testx ~]# cat 1.txt
个人博客:http://www.itsoku.com
上面有很多java资料和精品文章
欢迎大家访问
[root@testx ~]# head -n 2 1.txt
个人博客:http://www.itsoku.com
上面有很多java资料和精品文章

15、tail:输出文件尾部内容

tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件后 10 行内容。

还可以用来实时监控文件的变更。

1)基本语法

语法说明
tail 文件查看文件尾部 10 行内容
tail -n 5 文件查看文件尾部 5 行内容,5 可以是任意行数
tail -f 文件实时追踪该文档的所有更新

2)案例

(1)查看 1.txt 文件末尾 1 行内容

[root@testx ~]# tail -n 1 1.txt

(2)实时追踪 1.txt 的内容,当有更新的时候,当前屏幕会自动输出所有的更新,通常用来查看日志文件变化,非常有用

[root@testx ~]# tail -f 1.txt

16、>输出重定向 和 >>追加

1)基本语法

语法说明
ls -l > 目标文件将 ls -l 命令的结果写入到目标文件中(会覆盖目标文件内容)
ls -al >> 目标文件将 ls -al 命令的结果追加到目标文件中
cat 文件 1 > 文件 2将文件 1 的内容覆盖到文件 2 中
echo “内容” >> 目标文件将一段文字追加到目标文件

2)案例

(1)将ll命令结果结果写入到 1.txt 文件

[root@testx ~]# ll
总用量 0
drwxr-xr-x. 2 root root 6 4月  23 00:21 公共
drwxr-xr-x. 2 root root 6 4月  23 00:21 模板
drwxr-xr-x. 2 root root 6 4月  23 00:21 视频
drwxr-xr-x. 2 root root 6 4月  23 00:21 图片
drwxr-xr-x. 2 root root 6 4月  23 00:21 文档
drwxr-xr-x. 2 root root 6 4月  23 00:21 下载
drwxr-xr-x. 2 root root 6 4月  23 00:21 音乐
drwxr-xr-x. 2 root root 6 4月  23 00:21 桌面
[root@testx ~]# ll > 1.txt
[root@testx ~]# cat 1.txt
总用量 0
-rw-r--r--. 1 root root 0 5月   2 14:10 1.txt
drwxr-xr-x. 2 root root 6 4月  23 00:21 公共
drwxr-xr-x. 2 root root 6 4月  23 00:21 模板
drwxr-xr-x. 2 root root 6 4月  23 00:21 视频
drwxr-xr-x. 2 root root 6 4月  23 00:21 图片
drwxr-xr-x. 2 root root 6 4月  23 00:21 文档
drwxr-xr-x. 2 root root 6 4月  23 00:21 下载
drwxr-xr-x. 2 root root 6 4月  23 00:21 音乐
drwxr-xr-x. 2 root root 6 4月  23 00:21 桌面

(2)将ls命令结果追加到 1.txt 文件

[root@testx ~]# ls >> 1.txt

(3)采用 echo 将 hello 单词追加到 1.txt 中

[root@testx ~]# echo hello >> 1.txt

17、ln:创建软连接

软连接也称为符号链接,类似于 windows 里的快捷方式,有自己的数据块,主要存放了连接其他文件的路径。

1)基本语法

给源文件创建一个软连接

ln -s [源文件或目录] [软连接名称]

2)经验

删除软连接:rm -rf 软连接名称,而不是 rm -rf 软连接名称/

如果使用 rm -rf 软连接名/ 删除,会把软连接对应的真实目录下内容删除。

查询:通过 ll 就可以查看,列表属性第 1 位是 1,尾部会有位置指向。

3)案例

(1)创建软连接

在/tmp 目录创建一个快捷方式 desktop,指向/root/桌面

[root@testx tmp]# cd /tmp/
[root@testx tmp]# ln -s /root/桌面 ./desktop
[root@testx tmp]# ll desktop
lrwxrwxrwx. 1 root root 12 5月   2 14:53 desktop -> /root/桌面
[root@testx tmp]# cd desktop/
[root@testx desktop]# pwd
/tmp/desktop
# pwd -P:查看当前快捷方式对应的物理路径
[root@testx desktop]# pwd -P
/root/桌面

(2)cd -P:进入软连接实际物理路径

[root@testx tmp]# ln -s /root/桌面 ./desktop
[root@testx tmp]# cd -P desktop/
[root@testx 桌面]# pwd
/root/桌面

18、history:查看已执行过的历史命令

1)基本语法

history

2)案例

(1)查看已执行过的命令

history 可以查看已执行过的历史命令,返回的结果:命令编号 命令

[root@testx ~]# history
    1  pwd
    2  exit
    3  pwd
    4  ll
    5  mkdir 123
    6  ll
    7  rm 123
    8  rm -rf 123

(2)!命令编号,可以执行对应编号的命令

上面编号为 5 对应的命令是mkdir 123,那么我们可以使用!5再次把mkdir 123命令执行一遍

[root@testx ~]# !5
mkdir 123

(3)history n:查看最近的 n 行历史命令

[root@testx desktop]# history
    1  history
    2  pwd
    3  echo "ok"
    4  ls
    5  history
[root@testx desktop]# history 3
    4  ls
    5  history
    6  history 3

(4)history -c:清除命令历史记录

如果我们不想让别人看到命令的历史记录,可以使用 history -c 来清除命令记录。

[root@testx desktop]# history
    1  history
    2  pwd
    3  echo "ok"
    4  ls
    5  history
    6  history 3
    7  history
[root@testx desktop]# history -c
[root@testx desktop]# history
    1  history

19、tree:树形显示目录所有文件

tree 命令在系统中默认是不存在的,所以使用前需要先安装,然后才可以使用。

1)安装 tree 软件包

执行下面命令进行安装,过程中提示输入的地方输入 y 就可以

[root@testx b]# yum install tree
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.njupt.edu.cn
 * extras: ftp.sjtu.edu.cn
 * updates: mirrors.njupt.edu.cn
正在解决依赖关系
--> 正在检查事务
---> 软件包 tree.x86_64.0.1.6.0-10.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

===============================================================================================================================================
 Package                        架构                             版本                                     源                              大小
===============================================================================================================================================
正在安装:
 tree                           x86_64                           1.6.0-10.el7                             base                            46 k

事务概要
===============================================================================================================================================
安装  1 软件包

总下载量:46 k
安装大小:87 k
Is this ok [y/d/N]: y
Downloading packages:
tree-1.6.0-10.el7.x86_64.rpm                                                                                            |  46 kB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : tree-1.6.0-10.el7.x86_64                                                                                                   1/1
  验证中      : tree-1.6.0-10.el7.x86_64                                                                                                   1/1

已安装:
  tree.x86_64 0:1.6.0-10.el7

完毕!

2)语法

tree [选项] [目录]

树形显示目录中的文件。

目录可以省略,默认为当前目录

3)选项

选项功能
-h以人容易理解的方式显示文件大小(GBytes、MBytes、KBytes)
-L nn 用来指定显示的树的深度

4)tree 命令的使用

# 默认递归按照树形显示所有文件信息
[root@testx b]# tree
.
├── 1.tar.gz
├── log.tar.gz
└── target
    └── logs
        ├── 1.log
        └── 2.log

2 directories, 4 files

# -h选项:会同时显示文件大小(以人容易理解的方式展示文件占用磁盘的大小)
[root@testx b]# tree -h
.
├── [197K]  1.tar.gz
├── [ 98K]  log.tar.gz
└── [  18]  target
    └── [  32]  logs
        ├── [197K]  1.log
        └── [197K]  2.log

2 directories, 4 files

# -L n:n用来指定树的深度,比如下面只展示一层
[root@testx b]# tree -L 2
.
├── 1.tar.gz
├── log.tar.gz
└── target
    └── logs

2 directories, 2 files

# 多个选项可以同时使用
[root@testx b]# tree -Lh 2
.
├── [197K]  1.tar.gz
├── [ 98K]  log.tar.gz
└── [  18]  target
    └── [  32]  logs

2 directories, 2 files

转载请注明:XAMPP中文组官网 » Linux文件目录类命令汇总大全

您必须 登录 才能发表评论!