Linux服务器编程之:link()函数,ln命令,symlink,readlink,案例说明

简介: 1 link()依赖头文件 #include<unistd.h> 2函数定义 int link(const char *oldpath,const char *newpath); 函数说明:  link()  creates  a  new link (also known as a hard link) to an existing        file.  

1 link()依赖头文件

#include<unistd.h>

2函数定义

int link(const char *oldpath,const char *newpath);

函数说明:

 link()  creates  a  new link (also known as a hard link) to an existing
       file.

       翻译:link()函数为一个已经存在的文件创建一个新的链接(也就是通常所说的“硬链接”)

If newpath exists it will not be overwritten.
       翻译:如果新文件已经存在,它将不会被重写

This new name may be used exactly as the old  one  for  any  operation;
       both names refer to the same file (and so have the same permissions and
       ownership) and it is impossible to tell which name was the "original".

       翻译:新的名字可以替代旧的名字做任何操作,这些名字都指向同一个文件(并且也有相同的权限和拥有者),并且很难辨别哪个名称是原始的名称

3.返回值

      一旦成功,返回0,一旦错误,返回-1。并且erron被设置了结果

4.案例说明:

    

5.ln命令

说明:

        A:链接有两种,一种被称为硬链接(Hard Link),另外一种被称为符号链接(Symbol link),也叫软链接。建立硬链接时,链接文件和被链接文件必须位于同一个文件系统中,
并且不能建立指向目录的硬链接。而对于符号链接,则不存在这个问题。默认情况下,ln产生硬链接

     

6.symlink依赖的头文件

#include<unistd.h>

函数定义:

int symlink(const char *oldpath, const char *newpath);

描述:

symlink()  creates  a  symbolic  link  named newpath which contains the
       string oldpath.

7.readlink

读符号链接所指向的文件名字,不读文件内容

ssize_t readlink(const char *path, char *buf, size_t bufsiz)



目录
相关文章
|
2天前
|
存储 SQL 关系型数据库
服务器数据恢复—同友存储中raid5阵列上层虚拟机数据恢复案例
某单位同友存储,存储设备中若干磁盘组建了raid5磁盘阵列。未知原因导致存储设备崩溃无法启动,raid5阵列上层的虚拟机全部丢失,其中存放了重要数据的3台虚拟机需要恢复。
服务器数据恢复—同友存储中raid5阵列上层虚拟机数据恢复案例
|
1天前
|
关系型数据库 MySQL Linux
服务器Linux系统配置mysql数据库主从自动备份
这是一个基本的配置主从复制和设置自动备份的指南。具体的配置细节和命令可能因您的环境和需求而有所不同,因此建议在操作前详细阅读MySQL文档和相关资源,并谨慎操作以避免数据丢失或不一致。
9 3
|
1天前
|
Linux
linux中wait与waitpid函数使用场景及扩展
linux中wait与waitpid函数使用场景及扩展
|
2天前
|
Oracle Java 关系型数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
14 6
|
3天前
|
运维 数据挖掘
服务器数据恢复—RAID5磁盘阵列2块盘离线的数据恢复案例
服务器中有一组由多块硬盘组建的raid5磁盘阵列,服务器阵列中2块硬盘先后掉线导致服务器崩溃。
服务器数据恢复—RAID5磁盘阵列2块盘离线的数据恢复案例
|
4天前
|
运维 监控 安全
2023年最详细的:本地Linux服务器安装宝塔面板,并内网穿透实现公网远程登录
2023年最详细的:本地Linux服务器安装宝塔面板,并内网穿透实现公网远程登录
|
4天前
|
Ubuntu Android开发 数据安全/隐私保护
【Android平板编程】远程Ubuntu服务器Code-Server编程写代码
【Android平板编程】远程Ubuntu服务器Code-Server编程写代码
|
5天前
|
存储 算法 网络协议
【探索Linux】P.26(网络编程套接字基本概念—— socket编程接口 | socket编程接口相关函数详细介绍 )
【探索Linux】P.26(网络编程套接字基本概念—— socket编程接口 | socket编程接口相关函数详细介绍 )
12 0
|
5天前
|
消息中间件 Unix Linux
【探索Linux】P.14(进程间通信 | 匿名管道 | |进程池 | pipe() 函数 | mkfifo() 函数)
【探索Linux】P.14(进程间通信 | 匿名管道 | |进程池 | pipe() 函数 | mkfifo() 函数)
14 0