您的位置:首页 > 教程 > linux > Linux文件管理方法介绍

Linux文件管理方法介绍

2022-06-20 15:20:36 来源:易采站长站 作者:

Linux文件管理方法介绍

文件简介用户通过Shell与linux内核交互。Shell是一个命令行解释工具(是一个软件),它将用户输入的命令转换为内核能够理解的语言(命令)。Linux下,很多工作都是通过命令完成的,学好Linu...6Gr站长之家-易采站长站-Easck.Com

文件简介

用户通过Shell与linux内核交互。Shell是一个命令行解释工具(是一个软件),它将用户输入的命令转换为内核能够理解的语言(命令)。Linux下,很多工作都是通过命令完成的,学好Linux,首先要掌握常用命令。6Gr站长之家-易采站长站-Easck.Com

Linux中的所有数据都被保存在文件中,所有的文件被分配到不同的目录。目录是一种类似于树的结构,称为文件系统。 6Gr站长之家-易采站长站-Easck.Com
当你使用Linux时,大部分时间都会和文件打交道,通过本节可以了解基本的文件操作,如创建文件、删除文件、复制文件、重命名文件以及为文件创建链接等。6Gr站长之家-易采站长站-Easck.Com

1、ls(List files):查看文件

查看当前目录下的文件和目录可以使用 ls 命令,例如:6Gr站长之家-易采站长站-Easck.Com

$ ls

bin        hosts  lib     res.03
ch07       hw1    pub     test_results
ch07.bak   hw2    res.01  users
docs       hw3    res.02  work

(1)、通过 ls 命令的 -l 选项,获取更多文件信息

$ ls -l
total 1962188

drwxrwxr-x  2 amrood amrood      4096 Dec 25 09:59 uml
-rw-rw-r--  1 amrood amrood      5341 Dec 25 08:38 uml.jpg
drwxr-xr-x  2 amrood amrood      4096 Feb 15  2006 univ
drwxr-xr-x  2 root   root        4096 Dec  9  2007 urlspedia
-rw-r--r--  1 root   root      276480 Dec  9  2007 urlspedia.tar
drwxr-xr-x  8 root   root        4096 Nov 25  2007 usr
drwxr-xr-x  2    200    300      4096 Nov 25  2007 webthumb-1.01
-rwxr-xr-x  1 root   root        3192 Nov 25  2007 webthumb.php
-rw-rw-r--  1 amrood amrood     20480 Nov 25  2007 webthumb.tar
-rw-rw-r--  1 amrood amrood      5654 Aug  9  2007 yourfile.mid
-rw-rw-r--  1 amrood amrood    166255 Aug  9  2007 yourfile.swf
drwxr-xr-x 11 amrood amrood      4096 May 29  2007 zlib-1.2.3

每一列的含义如下:6Gr站长之家-易采站长站-Easck.Com

第一列:文件类型。
第二列:表示文件个数。如果是文件,那么就是1;如果是目录,那么就是该目录中文件的数目。
第三列:文件的所有者,即文件的创建者。
第四列:文件所有者所在的用户组。在Linux中,每个用户都隶属于一个用户组。
第五列:文件大小(以字节计)。
第六列:文件被创建或上次被修改的时间。
第七列:文件名或目录名。

注意:每一个目录都有一个指向它本身的子目录"." 和指向它上级目录的子目录"..",所以对于一个空目录,第二列应该为 2。 6Gr站长之家-易采站长站-Easck.Com
通过 ls -l 列出的文件,每一行都是以 a、d、- 或 l 开头,这些字符表示文件类型:6Gr站长之家-易采站长站-Easck.Com

- : 普通文件。如文本文件、二进制可执行文件、源代码等。
b : 块设备文件。硬盘可以使用块设备文件。
c : 字符设备文件。硬盘也可以使用字符设备文件。
d : 目录文件。目录可以包含文件和其他目录。
l : 符号链接(软链接)。可以链接任何普通文件,类似于 Windows 中的快捷方式。原来文件删了,快捷方式虽然在但是不起作用了。
p : 具名管道。管道是进程间的一种通信机制。
s : 用于进程间通信的套接字。

(2)、三种基本的文件类型

普通文件:普通文件是以字节为单位的数据流,包括文本文件、源码文件、可执行文件等。文本和二进制对Linux来说并无区别,对普通文件的解释由处理该文件的应用程序进行。
目录:目录可以包含普通文件和特殊文件,目录相当于Windows和Mac OS中的文件夹。
设备文件:有些教程中称特殊文件,是一个含义。Linux 与外部设备(例如光驱,打印机,终端,modern等)是通过一种被称为设备文件的文件来进行通信。Linux 输入输出到外部设备的方式和输入输出到一个文件的方式是相同的。Linux 和一个外部设备通讯之前,这个设备必须首先要有一个设备文件存在。例如,每一个终端都有自己的设备文件来供 Linux 写数据(出现在终端屏幕上)和读取数据(用户通过键盘输入)。设备文件和普通文件不一样,设备文件中并不包含任何数据。 6Gr站长之家-易采站长站-Easck.Com
设备文件有两种类型:字符设备文件和块设备文件。

字符设备文件以字母"c"开头。字符设备文件向设备传送数据时,一次传送一个字符。典型的通过字符传送数据的设备有终端、打印机、绘图仪、modern等。字符设备文件有时也被称为"raw"设备文件。6Gr站长之家-易采站长站-Easck.Com

块设备文件以字母"b"开头。块设备文件向设备传送数据时,先从内存中的buffer中读或写数据,而不是直接传送数据到物理磁盘。磁盘和CD-ROMS既可以使用字符设备文件也可以使用块设备文件。6Gr站长之家-易采站长站-Easck.Com

(3)、元字符 * ?

元字符是具有特殊含义的字符。* 和 ? 都是元字符:6Gr站长之家-易采站长站-Easck.Com

* 可以匹配 0 个或多个任意字符;
? 匹配一个字符。

例如http://www.cppcns.com6Gr站长之家-易采站长站-Easck.Com

$ ls ch*.doc

可以显示所有以 ch 开头,以 .doc 结尾的文件:6Gr站长之家-易采站长站-Easck.Com

ch01-1.doc   ch010.doc  ch02.doc    ch03-2.doc
ch04-1.doc   ch040.doc  ch05.doc    ch06-2.doc
ch01-2.doc ch02-1.doc c

这里,* 匹配任意一个字符。如果你希望显示所有以 .doc 结尾的文件,可以使用6Gr站长之家-易采站长站-Easck.Com

$ ls *.doc

(4)、隐藏文件 ls -a

隐藏文件的第一个字符为英文句号或点号(.),Linux程序(包括Shell)通常使用隐藏文件来保存配置信息。 6Gr站长之家-易采站长站-Easck.Com
下面是一些常见的隐藏文件:6Gr站长之家-易采站长站-Easck.Com

.profile:Bourne shell (sh) 初始化脚本
.kshrc:Korn shell (ksh) 初始化脚本
.cshrc:C shell (csh) 初始化脚本
.rhosts:Remote shell (rsh) 配置文件

查看隐藏文件需要使用 ls 命令的 -a 选项:6Gr站长之家-易采站长站-Easck.Com

$ ls -a

.         .profile       docs     lib     test_results
..        .rhosts        hosts    pub     users
.emacs    bin            hw1      res.01  work
.exrc     ch07           hw2      res.02
.kshrc    ch07.bak       hw3      res.03

一个点号(.)表示当前目录,两个点号(..)表示上级目录6Gr站长之家-易采站长站-Easck.Com

注意:输入密码时,星号(*)作为占位符,代表你输入的字符个数。6Gr站长之家-易采站长站-Easck.Com

2、vi:创建文件、编辑文件

在Linux中,可以使用 vi 编辑器创建一个文本文件,例如:6Gr站长之家-易采站长站-Easck.Com

$ vi filename

上面的命令会创建文件 filename 并打开,按下 i 键即可进入编辑模式,你可以向文件中写入内容。例如:6Gr站长之家-易采站长站-Easck.Com

This is Linux file....I created it for the first time.....
I'm going to save this content in this file.

完成编辑后,可以按 esc 键退出编辑模式,也可以按组合键 Shift + ZZ 完全退出文件。这样,就完成了文件的创建。6Gr站长之家-易采站长站-Easck.Com

$ vi filename

vi 编辑器可以用来编辑文件。如下6Gr站长之家-易采站长站-Easck.Com

可以打开一个名为 filename 的文件:6Gr站长之家-易采站长站-Easck.Com

$ vi filename

当文件被打开后,可以按 i 键进入编辑模式,按照自己的方式编辑文件。如果想移动光标,必须先按 esc 键退出编辑模式,然后使用方向机或者下面的按键在文件内移动光标:6Gr站长之家-易采站长站-Easck.Com

l 键向右移动
h 键向左移动
k 键向上移动
j 键向下移动

使用上面的按键,可以将光标快速定位到你想编辑的地方。定位好光标后,按 i 键再次进入编辑模式。编辑完成后按 esc 键退出编辑模式或者按组合键 Shift+ZZ 退出当前文件。6Gr站长之家-易采站长站-Easck.Com

3、cat(Catenate链接):查看文件内容

可以使用 cat 命令来查看文件内容,下面是一个简单的例子:6Gr站长之家-易采站长站-Easck.Com

$ cat filename
This is Linux file....I created it for the first time.....
I'm going to save this content in this file.

可以通过 cat 命令的 -b 选项来显示行号,例如:6Gr站长之家-易采站长站-Easck.Com

$ cat -b filename
1   This is Linux file....I created it for the first time.....
2   I'm going to save this content in this file.
$

4、wc(Word Count):统计单词数目

可以使用 wc 命令来统计当前文件的行数、www.cppcns.com单词数和字符数,下面是一个简单的例子:6Gr站长之家-易采站长站-Easck.Com

$ wc filename
2  19 103 filename

每一列的含义如下:6Gr站长之家-易采站长站-Easck.Com

第一列:文件的总行数
第二列:单词数目
第三列:文件的字节数,即文件的大小
第四列:文件名

也可以一次查看多个文件的内容,例如:6Gr站长之家-易采站长站-Easck.Com

$ wc filename1 filename2 filename3

5、 cp(Copy):复制文件

可以使用 cp 命令来复制文件。cp 命令的基本语法如下:6Gr站长之家-易采站长站-Easck.Com

$ cp source_file destination_file

下面的例子将会复制 filename 文件:6Gr站长之家-易采站长站-Easck.Com

$ cp filename copyfile

现在在当前目录中会多出一个和 filename 一模一样的 copyfile 文件。6Gr站长之家-易采站长站-Easck.Com

6、mv(Move):重命名文件

mv 命令其实是一个移动文件的命令,不但可以更改文件的路径,也可以更改文件名。6Gr站长之家-易采站长站-Easck.Com

重命名文件可以使用 mv 命令,语法为:6Gr站长之家-易采站长站-Easck.Com

$ mv old_file new_file

下面的例子将会把 filename 文件重命名为 newfile:6Gr站长之家-易采站长站-Easck.Com

$ mv filename newfile

现在在当前目录下,只有一个 newfile 文件。 6Gr站长之家-易采站长站-Easck.Com

7、rm(Remove):删除文件

rm命令可以删除文件,语法为:6Gr站长之家-易采站长站-Easck.Com

$ rm filename

注意:删除文件是一种危险的行为,因为文件内可能包含有用信息,建议结合 –i (每次删除前给出提示)选项来使用 rm 命令。 6Gr站长之家-易采站长站-Easck.Com
下面的例子会彻底删除一个文件:6Gr站长之家-易采站长站-Easck.Com

$ rm filename

你也可以一次删除多个文件:6Gr站长之家-易采站长站-Easck.Com

$ rm filename1 filename2 filename3

8、标准的Linux流

一般情况下,每个Linux程序运行时都会创建三个文件流(三个文件):6Gr站长之家-易采站长站-Easck.Com

标准输入流(stdin):stdin的文件描述符为0,Linux程序默认从stdin读取数据。
标准输出流(stdout):stdout 的文件描述符为1,Linux程序默认向stdout输出数据。
标准错误流(stderr):stderr的文件描述符为2,Linux程序会向stderr流中写入错误信息。

到此这篇关于Linux文件管理的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。6Gr站长之家-易采站长站-Easck.Com

6Gr站长之家-易采站长站-Easck.Com

如有侵权,请联系QQ:279390809 电话:15144810328

相关文章

  • Linux下用GHOST来做系统备份

    Linux下用GHOST来做系统备份

    在Windows系统下备份我们可以用GHOST工具软件完成,Linux系统不能完全依赖于GHOST工具,一则是GHOST本身是有版权的软件,二是GHOST只支持ext2、ext3文件系统的Linux分区,不支持reiserfs、xfs等
    2019-10-25
  • 给 FreeBSD 12.1 安装 GNOME3 图形界面

    给 FreeBSD 12.1 安装 GNOME3 图形界面

    FreeBSD是一个完全开放的、安全的系统,可以Do it yourself的系统。但是个人还是不喜欢呆板的命令行界面,所有就给 FreeBSD 12.1 安装 GNOME3 图形界面。 开始操作,启动FreeBSD 12.1,以root身份
    2019-10-27
  • Ubuntu Studio一个不错的操作系统

    Ubuntu Studio一个不错的操作系统

    Ubuntu Studio 是一个基于 Ubuntu 而面向音频、视频及图形爱好者的操作系统。本次推出的 Ubuntu Studio 为 7.04 版,目前仅支持 Intel i386 兼容的处理器。 Ubuntu Studio 从大量的开源多媒体创作程序
    2019-10-25
  • 最受欢迎的10款Linux免费游戏

    最受欢迎的10款Linux免费游戏

    图为在Linux下运行的免费游戏America's Army 如果你认为 Linux下没有什么好游戏的话,那就错了!我们来看看Linux下最受欢迎的10款游戏吧,而且这些游戏都是完全免费的! # skyreal update(06-12
    2019-10-25
  • compiz fusion特效使用心得(附3D桌面图)

    compiz fusion特效使用心得(附3D桌面图)

    3D桌面图 LINUX发行版就是好,当大多数人还在沉迷于那些什么风格图标鸟玻璃效果甚至孜孜不倦津津乐道的时候,Linux的高手们已经悄悄为我们开启了一个桌面系统3D的时代。 当我第一次
    2019-10-25
  • Ubuntu 下aMule 的安装配置

    Ubuntu 下aMule 的安装配置

    aMule 是一个类似于 eMule 的多平台 P2P 客户端程序。以下将简略叙述 aMule 在 Ubuntu 中的安装及配置 [High ID] 与 [KAD] 的过程。 安装: sudo apt-get install amule sudo apt-get install amule-utils 如果需要
    2019-10-25
  • JMeter jp@gc - stepping thread group插件

    JMeter jp@gc - stepping thread group插件

    这是一个出单接口压力测试的小例子,了解一下压力测试最最基础的基础。出单接口是用来保险出单的,不需要在UI界面下一步下一步的出单,接口一调数据入库完事~~~。再啰嗦一句接
    2019-10-27
  • Ubuntu 下使用K3B软件刻录光盘(图)

    Ubuntu 下使用K3B软件刻录光盘(图)

    不知大家会不会在Ubuntu下刻录光盘呢?k3b是KDE环境下的一个CD/DVD刻录软件,有非常容易使用的界面,功能比较齐全。用起来感觉就象是win下的Nero一样简单自然,比ubuntu里原来的刻录CD方式
    2019-10-25