一.ln 命令软硬链接介绍
在之前的文章我介绍过软硬链接,这里再次回顾一下。
链接它是有两种,一种被称为硬链接(Hard Link),另外一种被称为符号链接(Symbol link),也叫软链接。建立硬链接时,链接文件和被链接文件必须位于同一个文件系统中,并且不能建立指向目录的硬链接。而对于符号链接,则不存在这个问题。默认情况下,ln 产生硬链接。
首先我们对 hello 文件创建硬链接

[root@ SystemApi]# ls -l hello
-rw-r--r-- 1 root root 1024 Feb 25 09:56 hello
[root@ SystemApi]# ln hello hard_hello
[root@ SystemApi]# ls -l hard_hello
-rw-r--r-- 2 root root 1024 Feb 25 09:56 hard_hello

对于 hello 文件创建软连接(相当于 Windows 系统中的快捷方式)

[root@ SystemApi]# ln -s  hello soft_hello
[root@ SystemApi]# ls -l soft_hello
lrwxrwxrwx 1 root root 5 Feb 25 10:57 soft_hello -> hello

二.相关函数
1.link()与 unlink()函数
① 依赖的头文件

#include <unistd.h>

② 函数声明

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

③ 函数的作用
link()函数为一个已经存在的文件创建一个新的链接(也就是硬链接)
unlink()函数是删除软硬链接。
④ 返回值
一旦成功,返回 0,一旦错误,返回-1。并且 erron 被设置了结果

2.symlink()函数
① 依赖头文件

#include <unistd.h>

② 函数声明

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

③ 函数的作用:创建软链接
④ 返回值
一旦成功,返回 0,一旦错误,返回-1。并且 erron 被设置了结果
3.readlink()函数
① 依赖头文件

#include <unistd.h>

② 函数定义

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

③ 函数作用
读符号链接所指向的文件名字,不读文件内容
④ 返回值
成功返回 buf 填充的大小,失败返回-1

08_Linux系统之link(),symlink(),readlink()函数相关推荐

  1. linux link/symlink/unlink 硬连接和软连接介绍

    文章目录 硬连接和软连接的区别 硬连接 软连接 链接命令`ln` `ln`指令参数含义 例子 硬链接函数`link()` 符号链接函数`symlink()` 解除链接函数`unlink()` link ...

  2. linux c 函数 link symlink unlink 链接相关功能

    硬链接link 1.硬链接命令为ln,函数为link 2.man 2 link      硬链接函数 int link(const char *oldpath, const char *newpath ...

  3. linux symlink 函数,详解C语言中symlink()函数和readlink()函数的使用

    C语言symlink()函数:建立文件符号连接头文件: #include 定义函数: int symlink(const char * oldpath, const char * newpath); ...

  4. php symlink,php函数symlink详解

    php函数symlink详解 建立符号链接 (symbolic link),类似于Windows里头常用的.lnk快捷方式 symlink语法: int symlink(string target, ...

  5. linux下readlink函数详解

    linux下readlink函数详解 相关函数: stat, lstat, symlink 表头文件: #include <unistd.h> 定义函数:int  readlink(con ...

  6. readlink 函数用法

    相关函数: stat, lstat, symlink 表头文件: #include <unistd.h> 定义函数:ssize_t readlink(const char *path, c ...

  7. Linux中assert头文件,linux系统下如何使用assert函数

    linux系统下如何使用assert函数 只要看得懂程序的人都知道assert,在Windows下使用VC编写,使用assert之后,只需在IDE中设置为debug版或者是release版,编译器就会 ...

  8. _Linux系统编程—信号集操作函数

    先来回顾一下未决信号集是怎么回事. 信号从产生到抵达目的地,叫作信号递达.而信号从产生到递达的中间状态,叫作信号的未决状态.产生未决状态的原因有可能是信号受到阻塞了,也就是信号屏蔽字(或称阻塞信号集, ...

  9. SQL Server返回当前实例系统日期和时间的函数

    下面列举出SQL Server返回实例系统日期和时间的函数,除了ANSI标准函数CURRENT_TIMESTAMP在应用时无需在函数后多加一对空的小括号"()"外,其余均需. 从返 ...

最新文章

  1. Oracle编程入门经典 第10章 PLSQL
  2. Mongodb和redis书籍调研
  3. 1.7 空间正交分解
  4. [css] body{height:100%}和html,body{height:100%}有什么区别?为什么html要设置height:100%呢,html不就是整个窗口吗?
  5. vue router-link 添加点击事件
  6. STM32之串口例程
  7. vue实现页面权限显示_Vue 实现前端权限控制
  8. 内存区划分、内存分配、常量存储区、堆、栈、自由存储区、全局区[C++][内存管理][转载]...
  9. oracle sql 拆分字符串,oracle 拆分字符串
  10. 【Typecho插件】SakuraLoad
  11. _stdcall和_cdecl
  12. vc707 MicroBlaze Helloworld 实验
  13. java Outlook的日程_使用Outlook进行日程安排的方法
  14. 如何修改计算机ip 地址子网掩码,如何查看和修改主机的ip地址和子网掩码
  15. Linux HaProxy安装/启动/简单配置教程
  16. 2022-BNUZ-IT节程序设计竞赛网络赛题解
  17. python生产实战 python 闭包之庖丁解牛篇
  18. win10如何更改计算机用户名,怎么更改账户用户名,教你win10系统更改账户用户名称教程...
  19. [UNR#5]诡异操作
  20. HTC Desire HD(DHD G10) 刷机时MIUI卡在htc开机画面的解决方法

热门文章

  1. 手Q游戏中心的个性化推荐实战 | CSDN博文精选
  2. pyqt5 PDM下载工具 Persepolis Download Manager 记录
  3. 我傻眼了:一个完全由 AI 生成的播客,采访了乔布斯
  4. 在 Google Play 上保护您的游戏与用户
  5. 2020-01-04
  6. Cesium中的儒略日JulianDate
  7. Python生成图文并茂PDF报告
  8. java网络编程--URLEncode和URLDecoder
  9. Android中如何利用Minui显示PNG格式的图片
  10. DZY Loves Math 系列详细题解