cat: /proc/22657/ns/net: Invalid argument

这个错误是读取文件的方式不对

 

使用 ls -alth 查看详情

是一个链接,可以使用readlink 命令读取之;

类似的还有

 

也可以使用readlink函数进行读取

man 2 readlink 查看使用方式

下面给个例子

#include<unistd.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

#define  PATH_MAX  64

int main() {
    char result_path[PATH_MAX] = {0};
    ssize_t  size = readlink("/proc/22657/fd/3", result_path, sizeof(result_path) - 1);
    if (size > 0) {
        printf("%s\n", result_path);
    } else {
        printf("Could not read path");
	return -1;
    }
    char * inode = strndup(result_path + 8, strlen(result_path) - 9);
    printf("inode = %s\n", inode);
    free(inode);
    return 0;
}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果你在执行 `cat /proc/rk3588_ircode` 命令时出现 "No such file or directory" 的错误提示,说明你的设备不支持 `/proc/rk3588_ircode` 文件或者该文件在当前系统中不存在。 在瑞芯微 RK3588 设备中,红外遥控切换主副屏的功能实现方式可能会因不同的芯片型号和硬件平台有所不同。如果你想了解如何在你的设备上实现红外遥控切换主副屏的功能,可以尝试以下几个步骤: 1. 确认设备是否支持该功能:查看设备的用户手册或联系设备厂商,确认设备是否支持红外遥控切换主副屏的功能,并了解对应的命令或 API。 2. 查看设备的系统日志:使用以下命令查看设备的系统日志,看是否有与红外遥控相关的信息。 ``` adb logcat -s IR ``` 如果出现了类似于 `IRService: handleIrEvent() keycode = 0x00XX` 的信息,说明设备已经成功接收到了红外遥控信号,并且该信号对应的键值为 `0x00XX`。你可以根据实际情况来确定如何使用该键值来实现切换主副屏的功能。 3. 尝试使用 am 命令模拟按键事件:使用以下命令来模拟按键事件,实现对主屏和副屏控制的切换。 ``` # 切换到主屏控制 adb shell am broadcast -a android.intent.action.MEDIA_BUTTON --ei android.intent.extra.KEY_EVENT 126 # 切换到副屏控制 adb shell am broadcast -a android.intent.action.MEDIA_BUTTON --ei android.intent.extra.KEY_EVENT 127 ``` 其中,126 对应的是 KEYCODE_TV_SWITCH_SCREEN_MAIN,表示切换到主屏控制;127 对应的是 KEYCODE_TV_SWITCH_SCREEN_SUB,表示切换到副屏控制。请注意,具体的命令和参数可能会因设备和系统版本的不同而有所不同,请根据你的实际情况进行调整。 总之,如果你想在瑞芯微 RK3588 设备上实现红外遥控切换主副屏的功能,需要先确认设备是否支持该功能,并了解对应的命令或 API。如果你不确定如何实现该功能,建议参考设备的用户手册或联系设备厂商获取更多帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值