C语言调用命令行 ln 建立软链接

system()

c 复制代码
#include <stdio.h>
#include <stdlib.h>

int main() {
    // 使用system函数执行ls命令,列出当前目录下的文件和文件夹
    int status = system("ls -l");

    if (status == -1) {
        // 如果system函数返回-1,表示命令执行失败
        perror("system() failed");
        return EXIT_FAILURE;
    } else {
        // 如果system函数返回非-1值,表示命令执行成功,但返回值是命令的退出状态
        printf("Command executed successfully with status: %d\n", status);
        // 注意:这里的status并不总是直接表示成功或失败,而是命令的退出状态
        // 对于很多命令来说,退出状态0表示成功,非0值表示不同类型的错误或状态
    }

    return EXIT_SUCCESS;
}

ln(link) 创建软链接 即 符号链接

ln:这是link的缩写,是用来创建链接的命令。在Unix-like系统中,链接分为硬链接(hard link)和符号链接(symbolic link,简称symlink)。这个命令默认创建的是硬链接,但通过-s选项,我们指示它创建一个符号链接。

-s:这个选项告诉ln命令创建一个符号链接而不是硬链接。符号链接类似于Windows中的快捷方式,它包含了另一个文件或目录的路径。

bash 复制代码
ln -s /A /B

为/A创建快捷方式/B

如果/B已经存在,请删除它,否者会循环创建/B/B/B....

note:创建软链接可以使用mkdir -p /C/D/E建立多层文件夹,然后删除最后需要创建软链接的目标文件夹

eg:

bash 复制代码
目标: ln -s /A /C/D/E

过程:
mkdir -p /C/D/E
rm -rf /C/D/E
ln -s /A /C/D/E
结果: /C/D/E 相当于 /A 的快捷方式

删除目录

c 复制代码
    int ret = rmdir(pDirPath);

    if (ret == 0) {
        printf("Directory '%s' deleted successfully.\n", pDirPath);
    } else {
        perror("Error deleting directory");
        // 注意:perror 函数会根据全局变量 errno 的值打印出对应的错误消息
        // errno 是在库函数出错时由系统设置的
    }
相关推荐
爱吃香菜的初学者2 分钟前
十六.Linux——多线程(2)
linux·运维·开发语言
jeo陽16 分钟前
04-循环实战:素数、最大公约数、级数求和与枚举法
c语言·开发语言·数据结构
暖核35 分钟前
kubeadm 集群运维:Worker 节点下线删除、整套集群销毁重建指南
运维·开发语言·php
tachibana21 小时前
Go 语言里的 Context 是什么?
开发语言·后端·golang·go·语言
天桥下的卖艺者1 小时前
R语言使用ggcube包轻松绘制文章中的各类3D图形
开发语言·3d·r语言
爱读书的小胖2 小时前
LeetCode 88. 合并两个有序数组 C 解题分析
c语言·数据结构·算法
唐钰小宝B2 小时前
深度解读 JDK 8、JDK 11、JDK 17 和 JDK 21 的区别
java·开发语言·windows
inrichtt3 小时前
第七课时:STM32时钟系统揭秘:从零理解时钟树
c语言·数据结构·stm32·单片机·嵌入式硬件
知识分享小能手3 小时前
C学习教程,从入门到精通,C语言指针 —— 详细知识点总结(10)
c语言·开发语言·学习
熊猫钓鱼>_>3 小时前
开源鸿蒙平台 KMP 三方库 kotlin-csv 适配全流程:从编码假设到沙箱真机互通验证
开发语言·人工智能·华为·kotlin·harmonyos·鸿蒙