服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - linux学习日记四 文件与目录管理

linux学习日记四 文件与目录管理

2019-12-06 18:24Linux教程网 Linux

这系列文章主要是一刀写的linux相关学习资料,这篇文章主要介绍了linux下的文件与目录管理,需要的朋友可以参考下

====基本命令====

# pwd [-P] :显示当前的工作目录

-P:选项表示显示实际的工作目录,而非连接文件本身的目录名

# mkdir [-mp] 目录名:新建目录

-m:设置文件的权限,直接设置,不需要看默认权限(umask)

-p:递归创建目录

# rmdir [-p] 目录名称:删除空的目录

-p:连同上层空目录也一起删除

# echo $PATH 可以显示可执行文件路径,如果在当前目录下,必须输入./xx才能执行,默认当前路径.不在PATH中。

# ls [-adhlSt] 目录:列出目录里的文件

-a:所有文件,包含隐藏文件

-d:仅仅列出目录的信息,不列出里面的文件

-h:文件大写以K,M,G显示

-l:一行一行显示详细信息

-S:按文件大小排序,而不是默认的文件名排序

-t:依文件修改时间排序

–full-time:文件修改的完整时间

====文件的复制====

# cp [-apdriu] source1 source2 … directory

-a:相当于-pdr

-p:连同文件属性一起复制,而非使用默认属性(备份常用)

-d:若源文件为link file,则复制link file而非文件本身

-r:递归复制,用于目录复制行为(常用)

-i:若目标文件存在,在覆盖时候询问操作的进行(常用)

-u:若目标文件比源文件旧才更新目标文件

注意:cp dir1/* dir2/ 和cp -r dir1/ dir2/的区别,前一个复制dir1下的所有文件到dir2,后一个复制dir1目录到dir2(-r 连带目录下的文件也递归复制)

====文件的删除====

# rm [-fir] 文件或者目录

-f:force,忽略不存在的文件,不出现警告信息,也不询问用户是否删除

-i:互动模式,询问用户是否删除

-r:递归删除,谨慎小心!!

====文件的移动====

# mv [-fiu] source1 source2 … directory

-f:force,不询问,直接覆盖

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

-u:如果目标文件已存在,且source比较新,才覆盖

====获取path和filename====

# dirname /etc/sysconfig/network 得到/etc/sysconfig

# basename /etc/sysconfig/network 得到 network

====文件内容查询====

cat:从第一行开始显示

tac:最后一行开始显示

nl:显示的时候,输出行号

more:一页页显示,只能向后翻页

less:一页页显示,可以向前向后翻页,man页面就是调用的less

head -n 100:只显示头100行,head -n -100:前面的所有行,不包括最后的100行

tail -n 100 -f /var/log:只显示结尾100行(-f可以持续显示内容,很有用),tail -n +100:显示后面所有行,但不包括最前面的100行

od:以二进制方式读取文件内容

====文件的三个比较重要的时间属性====

mtime:modification time,文件的创建或者修改时间

ctime:文件的状态status改变的时间,比如权限或者属性更改

atime:access time,文件被访问被读取的时间

可使用命令:ls -l –time=atime/ctime/mtime 显示。默认是mtime

利用touch命令可以修改以上三个时间,可以用来创建一个空的文件

====默认权限与隐藏权限====

chattr设置隐藏属性,lsattr查看隐藏属性

# umask -S :查看默认权限

对文件和目录的默认权限是不用的:

对文件而言:-rw-rw-rw

对目录而言:drwxrwxrwx

而umask的数值指的是在此基础上剪掉的权限部分。

# umask 002 可设置

# chattr [+-=][ai] 文件或者目录

+:增加,如果原本存在,不动,-也是一样,=直接赋值

a:这个文件只能增加数据,也不能删除也不能修改数据,只有root可以设置这个东东

i:这个就厉害了,可以让一个文件不被删除、改名、设置连接也无法写入或添加数据,只有root可以设置。

# lsattr [-adR] 文件或目录,可以查看隐藏属性

====文件特殊权限:SUID,SGID,SBIT====

当s出现在owner的x上时候,代表SUID,其含义是:

* SUID权限仅对二进制程序(binary program)有效;

* 执行者对于该程序需要具备x的可执行权限;

* 本权限仅在执行程序过程中(run-time)有效;

* 执行者将具有该程序owner的权限。

当s出现在group的x上时候,代表SGID,其含义是:

对文件来讲 –>

* SGID对二进制程序有用;

* 程序执行者对该程序来说,需具备x的权限;

* 执行者在执行过程中会获得该程序用户组的支持。

对目录来讲–>

* 用户如果对此目录具有r与x的权限,该用户可以进入该目录;

* 用户在此目录下的有效用户组(effective group)变为该目录的group;

* 若用户在此目录下具有w权限,则用户创建的新文件的group与此目录的group一样。

SBIT(Sticky Bit)只对目录有效,作用是:

* 当用户对于此目录有w,x权限的时候;

* 用户在该目录下创建文件或者目录,仅有自己和root才能删除

4为SUID,2为SGID,1为SBIT

chmod 4755 filename,你懂得。如果是S和T表示连x的权限都没有了,那s和t的设置就没有啥用了,摆设而已,空的。

====命令与文件的查询====

# which command:查找命令的位置,根据$PATH去查找的。

文件名的查找:

先用whereis 和 locate查找,速度快,因为直接查询数据库,而找不到后再用find,直接搜索硬盘

# whereis [-bmsu] 文件或目录名

-b:只找二进制文件

-m:只找说明文件manual路径下的文件

-s:只找source源文件

-u:查找不在上述三个选项中的其他特殊文件

# locate [-ir] keyword

-i:忽略大小写

-r:正则式查找

最后一个find命令,太强大了,不想写了,自己去查吧。

find /var -mtime +4:大于等于5天前的文件名

find /var -mtime -4:小于等于4天内的文件名

find /var -mtime 4:4~5天那一天

find /home -user yidao

find / -nouser

find / -name password:名字为password的文件

find /var -type s:socket文件

find / -perm +7000

find / -perm +7000 -exec ls -l {} \;

find /etc -name ‘*httpd*’ :通配符形式也行

延伸 · 阅读

精彩推荐
  • LinuxLinux lnmp下无法使用mail发邮件的两种解决方法

    Linux lnmp下无法使用mail发邮件的两种解决方法

    在配置了lnmp环境后,出现了mail函数不能发送邮件的问题,其实有两种方法,一是使用sendmail组件,而是使用postfix。下面为大家一一介绍下 ...

    Linux之家4042019-09-17
  • LinuxLinux上设置用户通过SFTP访问目录的权限的方法

    Linux上设置用户通过SFTP访问目录的权限的方法

    这篇文章主要介绍了Linux上设置用户通过SFTP访问目录的权限的方法,SFTP可以理解为使用SSH协议进行FTP传输的协议,因而同时要对OpenSSH进行相关设置,需要的朋...

    OSChina10022019-06-19
  • Linuxlinux中rmdir命令使用详解(删除空目录)

    linux中rmdir命令使用详解(删除空目录)

    今天学习一下linux中命令: rmdir命令。rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的 ...

    linux命令大全5372019-11-19
  • Linux手把手教您在 Linux 上使用 GPG 加解密文件

    手把手教您在 Linux 上使用 GPG 加解密文件

    在本教程中,我将告诉你如何用 GPG 加密和解密文件。这是一个简单的教程,你可以在你的 Linux 系统上尝试所有的练习。这将帮助你练习 GPG 命令,并在你...

    Linux中国6962021-12-15
  • Linux详解Linux系统下PXE服务器的部署过程

    详解Linux系统下PXE服务器的部署过程

    这篇文章主要介绍了Linux系统下PXE服务器的部署过程,包括对PXE的API架构作了一个基本的简介,需要的朋友可以参考下...

    运维之道9812019-07-04
  • LinuxLinux中环境变量配置的步骤详解

    Linux中环境变量配置的步骤详解

    Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的...

    Myths7882022-02-10
  • LinuxLinux常用的日志文件和常用命令

    Linux常用的日志文件和常用命令

    成功地管理任何系统的关键之一,是要知道系统中正在发生什么事。 Linux 中提供了异常日志,并且日志的细节是可配置的。Linux 日志都以明文形式存储,所...

    Linux教程网2632020-04-18
  • Linux确保Linux系统安全的前提条件 漏洞防护

    确保Linux系统安全的前提条件 漏洞防护

    Linux 作为开放式的操作系统受到很多程序员的喜爱,很多高级程序员都喜欢编写Linux操作系统的相关软件。这使得Linux操作系统有着丰富的软件支持,还有无...

    Linux之家2642020-04-11