Linux温习(三)Linux文件和目录管理

关于Linux目录的几个常见概念

  1. 路径

    对文件位置信息的描述机制,是指从树型目录中的某个目录层次到其内某个文件的一条通路;分为相对路径和绝对路径;

  2. 工作目录

    登入系统后,用户始终处于某个目录中,此目录即为工作目录,或称作当前目录

  3. 根目录

    Linux树型目录结构的最顶层目录

  4. 用户“家”目录

    也称用户主目录,通常是位于/home目录中跟用户名称相同的一个目录,用户登录系统后默认处于此目录中

路径相关

描述:路径是从一个目录到另一个目录或文件的通路,由各级目录的名称来标识

  • 绝对路径

    从根目录/开始到文件名结束的路径

    例如: /usr/local/tomcat7/logs/catalina.out

  • 相对路径

    不是从根目录开始的路径

    例如:cd ../catalina.out

  • 几个特殊符号

    .代表当前路径

    ..代表上层目录

    ~代表用户根目录

    ~user 代表user的根目录

  • 系统登录时候,用户会自动跳转到其home目录,root用户的主目录是/root,而其他用户(user)的默认主目录是/home/user
  • 环境变量PATH

    环境变量PATH的作用是提供给用户查找文件的可能路径

    当新安装了套件时,可能需要将可执行文件的路径写入环境变量

    查看PATH方法

    echo $PATH

文件、目录操作命令

概要:

目录操作命令

ls pwd cd mkdir rmdir

文本文件查看命令

cat more less head tail

文件操作命令

file touch cp rm mv

文件内容统计命令

wc

文件链接命令

ln

1.目录操作命令

命令 功能
ls 显示指定目录和文件的信息
pwd 显示当前目录名称
cd 进入指定的目录
mkdir 创建指定名称的目录
rmdir 删除指定名称的目录
  • ls命令

    功能说明:

    将指定目录内容输出到标准输出设备上;

    如果不指定File 或Directory 参数,显示当前目录的内容

    缺省情况下,ls 命令按照文件名的字母顺序显示所有信息

    当ls 命令显示目录内容时,它不显示名称以.(点)开头的文件项,除非使用了-a 或者-A 标志

    命令格式:

    ls [-aAdfFhilRS] 目录名

    ls [–color={none,auto,never,always}] 目录名

    ls [–full-time] 目录名

    ls命令的常用选项

    -A 列出所有条目,除了.(点)和..(点-点)

    -a 列出目录中所有项,包括以.(点)开始的项

    -l(L 的小写)显示方式、链接数目、所有者、组、大小(按字节)和每个文件最近一次修改时间

    d 此项为目录

    b 此项为块特殊文件

    c 此项为字符特殊文件

    l 此项为符号链接

    p 此项为一个先进先出(FIFO)特殊文件

    s 此项为本地套接字

    -此项为普通文件

    -r反转排序顺序,适当的按字母逆向排序或者首先排序最旧的文件

    -R递归列出所有子目录

    -h 以更直观方式显示文件大小

    –color=never 不要按照文件属性用不同的颜色

    –color=always 显示颜色

    –color=auto 让系统自行设置是否显示颜色

    –full-time 以完整的时间模式输出

    –time={atime,ctime} 输出访问时间或者是改变权限的时间,而非是修改时间

  • pwd命令

    功能说明:

    显示工作目录的路径名称(print working directory)

    命令格式

    pwd [-P]

    pwd 命令将当前目录的全路径名称(绝对路径)写入标准输出设备;全部目录使用/(斜线)分隔;第一个/ 表示根目录,最后一个目录是当前目录

    [-P]显示出实际路径,而非使用连接的路径

    /var/mail是/var/spool/mail的连接文件

  • cd命令

    功能说明:

    更改当前工作目录(change directory)

    命令格式:

    cd [相对路径或绝对路径]

    使用说明:

    用户必须具有指定目录中的执行许可权

    如果未指定目录参数,cd 命令会将当前工作目录设置为登录目录

    支持相对路径和绝对路径

    应用实例:

    cd ~user表示切换到user的主(home)目录

    .(点)表示当前目录

    ..(点点)表示父目录

    cd ~ 返回当前用户主目录

    cd -返回用户上次所在的目录

  • mkdir命令

    功能说明:

    创建一个或多个新的目录

    命令格式:

    mkdir [-mp] 目录名

    使用说明:

    每个新目录包含标准项.(点)和..(点-点)

    -p 创建丢失中间路径名称目录;如果没有指定-p 标志,则每个新创建的目录的父目录必须已经存在

    -m 设置新创建的目录的权限,不管默认权限

  • rmdir命令

    功能说明:

    删除目录

    命令格式:

    rmdir [-p] 目录名

    使用说明:

    必须为空,并且必须具有父目录的写权限

    -p 沿着参数指定的路径名除去所有目录

    例如,如果要删除~/test、~/test/test1、~/test/test1/xyz,可以使用如下命令

 rmdir –p ~/test/test1/xyz

2.文件操作命令

命令 功能
file 显示指定文件的类型
touch 建立指定名称的文件或更新文件时间
cp 复制文件或目录
rm 删除文件或目录
mv 移动文件或目录,文件或目录重命名
  • file 命令

    功能说明:

    确定文件类型

    命令格式:

    file 文件名

    使用说明:

    文件可以是常规文件、目录、FIFO(指定的管道)、块特殊文件、字符特别文件、符号链接或者套接字类型

    对于长度为零的常规文件,将识别为空文件

    对于符号链接文件,缺省情况下此链接后跟符号链接引用的文件

    UTF,是Unicode Text Format的缩写,意为Unicode文本格式

  • touch 命令

    功能说明:

    创建新文件

    更新文件的访问和修改时间

    修改时间ctime (use –change time )

    访问时间atime(access)

    格式:

    touch [-opt] {File|Directory}

    常用选项

    -a 更改由File 变量指定的文件的访问时间

    -c如果文件不存在,则不要进行创建

    -m更改File 的修改时间

    -t Time使用指定时间而不是当前时间。

    Time 变量以十进制形式[YYMMDDhhmm]指定

    YY 指定年份的后两位数字

    MM 指定一年的哪一月(从01 到12)

    DD 指定一月的哪一天(从01 到31)

    hh 指定一天中的哪一小时(从00 到23)

    mm指定一小时的哪一分钟(从00 到59)

    命令实例

  • rm 命令

    功能说明:

    删除(链接)文件或目录

    命令格式:

    rm [opt] file/dir

    使用说明:

    如果要删除的文件是符号链接,则除去链接,但是符号链路引用的文件或目录仍在

    常用选项

    -f 在删除有写保护的文件前不提示

    -i 删除每个文件前提示

    -r 当目标参数为目录时递归删除目录及其内容

    -R 同-r

    命令实例

  • mv 命令

    功能说明:

    移动(并重命名)文件或目录

    mv 命令可以覆盖现有文件

    命令格式:

    mv [opt] source destination

    参数说明:

    -f:强制直接转移不询问

    -i:若目标文件已经存在询问是否覆盖

    -u:若源文件已经存在,但源文件比较新,则更新

    命令实例

  • cp 命令

    功能说明:

    复制文件或目录

    命令格式:

    cp [-opt] [src_file|src_dir] [dst_file|dst_dir]

    常用选项

    -a 复制目录时使用,保留链接、文件属性、并递归地复制目录

    -d 复制时保留链接

    -f 如果指定的目标文件存在,先强行覆盖

    -i 覆盖目标文件前需要用户先确认

    -p 复制文件,包括其修改时间和访问权限

    -r 复制目录时可递归复制目录中的内容

    -R 如同-r,但特殊文件将被重新创建,而非复制

    命令实例

命令实例图

3.文本文件查看命令

命令 功能
cat 显示文本文件内容
tac 从最后一行开始显示,tac和cat字母顺序相反
nl 显示的时候,输出行号
more 分页显示文本文件内容
less 分页显示文本文件内容,并可方便反复浏览
head 显示文件首部内容
tail 显示文件尾部内容
  • cat 命令(concatenate)

    功能说明:

    显示文本文件内容

    命令格式:

    cat [-AEnTv] 文件名

    参数说明

    -n 或–number 由1 开始对所有输出的行数编号

    -v 将非打印字符显示为可视字符,除了跳格符、换行符和换页符;

    -E 在每行末尾显示一个$(美元符号)

    -T则将跳格字符显示为^I,与-v联合使用;-t=-vT

    -A 等同于-vEt

    功能1:

    将指定文件从首行开始连续显示在屏幕,当文件过大时不适用

    例如cat install.log

    功能2:

    将两个或多个文件连接到一起

    格式:

    catfile1 file2 …>filen :将file1, file2等的内容复制到新建文件filen中

    命令实例

  • tac 命令

    功能说明:

    从最后一行开始显示,tac和cat字母顺序相反

    命令实例

  • nl 命令

    功能说明:

    显示的时候,输出行号

    命令格式:

    nl [-bnw] 文件

    参数说明:

    -b:制定行号的指定方式

    -b a:表示不论是否为空行,同样列出行号

    -b t:如果有空行,空行不要列出行号

    -n:列出行号的表示方法

    -n ln:行号在字段的最左方显示

    -n rn:行号在字段的最右方显示,不加0

    -n rz:行号在字段的最右方显示,加0

    -w:行号字段占用的位数

  • more 命令

    功能说明:

    分页显示文本文件内容

    命令格式:

    more 文件名

    使用说明:

    more 命令读取文件,并将内容屏显标准输出设备

    此命令在每屏后暂停,并在屏幕底部打印单词More和显示内容百分比

    回车键:more 命令将会再向下显示一行

    空格键:more 命令显示文本的另一屏。

  • less 命令

    功能说明:

    分页显示文本文件内容,并可方便反复浏览

    命令格式:

    less 文件名

    使用说明:

    less 命令的功能几乎和more 命令一样,也是用来按页显示文件,不同之处在于less 命令在显示文件时允许用户既可以向前又可以向后翻阅文件

    常用功能键

    pageup

    pagedown

    / 向下搜索

    ? 向上搜索

  • head 命令

    功能说明:

    显示文件首部内容

    命令格式:

    head [–n Num] File…

    选项说明:

    -n 选项用来指定显示File的开头行数

    使用说明:

    显示一个文件或多个文件的前几行或前几个字节

    缺省显示前10 行

    输入文件必须是文本文件

  • tail 命令

    功能说明:

    显示文件尾部内容

    命令格式:

    tail [-nf num] 文件

    选项说明:

    -n 选项用来指定从每一要显示的指定文件的开头的行数

    +Num 显示从第Num行开始至文件尾的内容

    -Num 显示从距文件尾Num行开始至文件尾的内容

    -f 如果文件内容正在增长中,此选项则动态显示增长的内容,直到用户使用“Ctrl+C”结束

    使用说明:

    我们经常在看服务器的日志的时候会用到tail 命令

    我们经常这样用

tail -f /usr/local/tomcat/logs/catalina.out

4.文件查找命令

命令 功能
which whereis指令会在特定目录中查找符合条件的文件;
where 从最后一行开始显示,tac和cat字母顺序相反
locate 分页显示文本文件内容
find 显示的时候,输出行号
  • which 命令

    功能说明:

    查看可执行文件的路径

    命令格式:

    which [-a] 命令

    常用选项:

    -a 将所有可找到的命令列出,不仅仅列出第一个找到的命令

    举例:

which pwd
which lsattr
  • whereis 命令

    功能说明:

    查找“特定文件”

    whereis指令会在特定目录中查找符合条件的文件;

    命令格式:

    whereis [选项] 文件列表

    常用选项

    -b 只查找二进制文件

    -m 只查找说明文件

    -s 只找源文件

    -u 没有帮助文件的文件

    命令实例

  • locate 命令

    功能说明:

    用于查找符合条件的文件,它会去保存文件与目录名称的数据库内,查找合乎条件的文件或目录

    命令格式:

    locate 文件名

    使用说明:

    需要先建立数据库,而后方可进行查找

    updatedb命令用来生成最新的文件名数据库,它会在目录/var/lib/mlocate/下生成mlocate.db 数据库

    它的查找速度比find快,但更新数据库的过程本身会很耗费时间

  • find 命令

    功能说明:

    在目录结构中搜索文件,并执行指定的操作

    命令格式:

    find 起始目录查找条件[操作]

    使用说明:

    起始目录:find命令所查找的目录路径;例如可用.来表示当前目录,用/来表示系统根目录

    查找条件:匹配机制,如可以按照文件名、文件权限、修改时间等进行文件查找

    操作:按指定条件查找后进行的特定处理方法,如将查找到的文件在屏幕上显示出来,或对其进行权限修改,或将查找到的文件删除等等

    find命令的查找条件(1)

    -name ‘字串’按照文件名查找文件

    -lname ‘字串’查找文件名匹配的所有符号链接文件

    -gid n 查找属于ID号为n的用户组的所有文件

    -uid n 查找属于ID号为n的用户的所有文件

    -group ’字串’查找属于同一用户组的所有的文件

    -user ’字串’查找属于同一用户的所有文件

    -empty 查找大小为0的文件

    -path ’字串’查找路径名匹配所给字串的所有文件

    -perm 权限查找具有指定权限的文件和目录,权限的表示可以如755,644

    命令实例

    find命令的查找条件(2)

    -nogroup 查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在

    -nouser 查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在

    -type 查找某一类型的文件

    -size n [bck] 查找文件长度为n块的文件,带有c时表示文件长度以字节计

    -depth 在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找

    命令实例

    find命令的查找条件(3)

    以时间为条件查找

    -amin +n -n 按访问时间查找;-n指n分钟以内,+n指n分钟以前

    -atime +n -n 按访问时间查找;-n指n天以内,+n指n天以前

    -cmin +n -n 按创建时间查找

    -ctime +n -n 按创建时间查找

    -mmin +n -n 按修改时间查找

    -mtime +n -n 按修改时间查找

    -newer file 列出比file还新的文件

    可执行的操作

    -exec 命令{} \;对符合条件的文件执行所给的命令

    {}表示命令的参数即为所找到的文件

    命令的末尾必须以“\;”结束

    -ok 命令{} \;同-exec,但会询问用户是否执行该命令

    命令实例

find / -name g.txt -exec ls -l {} \;

find命令例子

在/etc目录下查找所有以rc开头的文件名

find /etc -name “rc*” -print

查找系统中所有文件长度为0的普通文件,并列出它们的完整路径

find / -type f -size 0 -exec ls -l {} \;

在/etc下的所有以passwd开头的文件中查找是否有名为redhat的用户

find /etc –name “passwd*” –exec grep “redhat” {} \;

查找当前目录下所有以txt结尾且2分钟内没有被访问过的文件

find . -name “*.txt” -amin +2 -print

四个不同搜索命令区别

which:

通过环境变量PATH指定路径进行搜索

whereis,locate:

通过存储系统文件信息的数据库

find:

直接搜索硬盘

5.文件与目录的默认权限与隐藏权限

命令 功能
umask 用来设置新建文件权限的掩码
chattr 设置文件的隐藏属性
lsattr 显示文件夹的隐藏属性
set UID 特殊权限
set GID 如果s的权限是在用户组
sticky Bit 只针对目录有效
  • umask 命令

    功能描述:

    用来设置新建文件权限的掩码

    命令格式:

    umask [模式]

    使用说明

    模式为新建文件权限的掩码值

    Linux系统中目录的默认权限是drwxrwxrwx,文件的默认权限是-rw-rw-rw-。因此,有以下公式:

    新目录的权限= drwxrwxrwx-默认权限掩码

    新文件的权限= -rw-rw-rw--默认权限掩码

    基于安全原因,Linux系统不允许文件的默认权限有执行权

    不带任何参数的umask命令显示当前的默认权限掩码值

    新目录的权限= drwxrwxrwx-(d—-w–w-)

    = drwxr-xr-x

    新文件的权限= -rw-rw-rw--(—–w–w-)

    = -rw-r–r–

  • chattr 命令
  • 功能说明:

    设置文件的隐藏属性

    命令格式:

    chattr [+-=] [ASacdistu] 文件或目录

    参数说明:

    a:只能增加数据,不能删除,只有root才能设置

    i:可以让文件“不能被删除、改名、设置连接,也无法写入或新增数据”

  • lsattr 命令

    功能说明:

    显示文件夹的隐藏属性

    命令格式:

    lsattr [-aR] 文件或目录

    参数说明:

    -a:显示隐藏文件的属性

    -R:连同子目录的数据一并列出

  • set UID 命令

    特殊权限

    s与t:让一般用户在执行某些程序的时候,能够暂时具有该程序拥有者的权限。

  • set GID命令

    功能说明:

    如果s的权限是在用户组,称为Set GID,简称SGID

    文件:如果SGID设置在二进制文件上,不论用户是谁,在执行改程序的时候,它的有效用户组将会变成改程序用户组的所有者。

    目录:如果SGID设置在A目录上,则在该A目录内建立的文件或目录的用户组,将会是此A目录的用户组。

  • sticky Bit 命令

    功能说明:

    只针对目录有效

    在具有SBit的目录下,用户若在该目录下具有w及x权限,则当用户在该目录下建立文件或目录时,只有文件的拥有者与root有权利删除。

    SUID/SGID/SBIT权限设置

    SUID: 4

    SGID: 2

    SBIT: 1

    格式:chmod xxxx filename

    命令实例

时间: 2024-11-03 21:10:02

Linux温习(三)Linux文件和目录管理的相关文章

linux系统命令学习系列-文件和目录管理

复习上节内容: 1. 定时执行任务命令crontab –e, crontab –l,crontab –r 2. 作业:定义一个定时任务,每分钟向/tmp/test.txt文件输出hello world crontab –e */1 * * * * echo 'hello world'>>/tmp/test.txt 本节我们来说一下文件和目录管理 1. 计算机操作系统使用目录组织文件 2. 所有的文件系统组成一个目录树结构 3. 目录树有一个根目录 4. 查看当前目录命令:pwd 5. 相对路径

Linux常用命令(3)-文件和目录管理

(1).Linux 文件权限和目录配置 Linux 文件分三种身份 owner.group.others. 三种权限 read.write.execute #ls -al drwxr-xr-x   1     root   root  4230  2012-09-12 17:21 jdk-7u7 对应文件权限  连接数    用户组  用户 文件大小  最后修改日期      文件名 其中[d] 表示为目录 [-] 表示为文件 文件类型和权限三个为一组,总共三组,其中第一组是文件所有者权限,第二

linux学习笔记之 文件和目录管理

这里列这些常用的命令提醒一下自己,免得老是会忘记那么几个 cd pwd mkdir rmdir ls mv cp rm cat tac nl more less head tail od ls -l file                    <==显示的是默认的mtimels --time={ctime|atime] file  <==显示指定的时间类型ls --full-time                <==显示完整的时间 mtime mtime(modification

Linux学习三 文件与目录管理

1 目录与路径 1.1 相对路径与绝对路径 绝对路径:路径的写法一定由根目录 / 写起. 相对路径:路径的写法不是由 / 写起. 1.2 目录的相关操作 . :代表此层目录 .. :代表上一层目录 - :代表前一个工作目录 ~ :代表目前用户身份所在的家目录 ~account :代表account用户的家目录 需注意的是:在所有目录下都存在 ./..,分别代表此层和上层目录.根目录下的 .. 目录与 . 目录是同一个. 常用处理目录的命令: cd:切换目录 pwd:显示当前目录 mkdir:建立

鸟哥的Linux私房菜 基础学习篇读书笔记(7):Linux文件与目录管理

这一章主要讲述的是如何操作与管理Linux系统中的文件和目录,主要包括目录间的切换,目录的创建与删除,文件的创建与删除,文件的查找,文件内容的查看等等. 前一章中已经讲过相对路径以及绝对路径,绝对路径就是指从根目录("/")开始写起的路径名,而相对路径绝不会由根目录开始写起,相反,相对路径是相对于当前工作目录的路径名.Linux操作系统中有几个特殊的目录: . 代表此层目录: .. 代表上一层目录: - 代表前一个工作目录: ~ 代表当前用户身份所在的主文件夹: ~account 代表

Linux 程序设计学习笔记----POSIX 文件及目录管理

转载请注明:http://blog.csdn.net/suool/article/details/38141047 问题引入 文件流和文件描述符的区别 上节讲到ANSI C 库函数的实现在用户态,流的相应资源也在用户空间,但无论如何实现最终都需要通过内核实现对文件的读写控制.因此fopen函数必然调用了对OS的系统调用.这一调用在LINUX下即为open, close, read, write等函数.这些都遵循POSIX标准. so,在linux系统中是如何通过POSIX标准实现对文件的操作和目

攻城狮在路上(叁)Linux(十三)--- 文件与目录的管理

一.查看文件与目录: 1.命令格式:ls [-aAdfFhilnrRSt] 目录名称; 2.参数说明: -a:显示所有的文件,包括隐藏文件(隐藏文件一般以.开头). -d:仅列出目录本身. -l:列出长数据串,包含文件的属性与权限等数据. 二.复制命令:cp 1.命令格式:cp [-adfilprsu] 源文件 目标文件 2.参数说明: -i:若目标文件已经存在时,覆盖之前先询问. -r:递归持续复制,用于目录的复制. -p:连同文件的属性一起复制过去,而非使用默认属性,一般在备份的时候用. -

第七章、Linux 文件与目录管理

1. 目录与路径 1.1 相对路径与绝对路径 1.2 目录的相关操作: cd, pwd, mkdir, rmdir 1.3 关於运行档路径的变量: $PATH 2. 文件与目录管理 2.1 文件与目录的检视: ls 2.2 复制.删除与移动: cp, rm, mv 2.3 取得路径的文件名称与目录名称 3. 文件内容查阅: 3.1 直接检视文件内容: cat, tac, nl 3.2 可翻页检视: more, less 3.3 数据撷取: head, tail 3.4 非纯文字档: od 3.5

实验02 Linux文件和目录管理

一.实验目的 熟悉Linux的文件和目录管理 二.实验环境 CentOS 6.5系统. 三.实验内容 1. 文件和目录的创建.编辑.复制.移动.删除 2. 文件内容的过滤.排序.去重 3. 文件和目录的查找.压缩.解压.打包.解包.分割和重组 4. 文件名通配符的使用,shell的输入输出重定向和管道 四.实验步骤: 1. 了解Linux目录组织结构 (1) 进入根目录 命令:_cd /_ (2) 查看根目录内容 命令:_ls_ (3) 进入并浏览根目录中的各子目录,了解这些目录主要存放哪方面内

鸟哥私房菜第七章 Linux文件与目录管理

一.目录与路径 1.相对路径与绝对路径 2.目录的相关操作 以下为特殊目录: .        :代表此目录 ..       :代表上一层目录 -        :代表前一个工作目录 ~       :代表"目前用户身份"所在的主文件夹 ~account :代表account这个用户的主文件夹 注:根目录下上一层(..)与前(.)是同一个目录. (1)cd:切换目录(change directory) 语法: [[email protected] ~]# cd [相对路径或绝对路径]