社区
C语言
帖子详情
chmod();
FBIq
2005-07-03 03:10:25
int chmod(char *filename, int mode)
这里的mode指什么?
...全文
422
15
打赏
收藏
chmod();
int chmod(char *filename, int mode) 这里的mode指什么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
FBIq
2005-07-05
打赏
举报
回复
在TC里可以使用,换了DEV-C++就不行!为什么?
megaboy
2005-07-04
打赏
举报
回复
这个例子跟你自己使用的例子在chmod的使用上基本一样的,我已经在xp和dos6.22上试过了,是可以修改自身的属性的。不知道你使用什么环境,还有,如果你使用NTFS分区,注意看一下当前用户对此文件有没有写权限。
FBIq
2005-07-04
打赏
举报
回复
好吧,研究下!
#include <dos.h>
#include <dir.h>
#include <stdio.h>
#include <io.h>
#include <sys\stat.h>
main( int argc, char* argv[] )
{
struct time now;
FILE* fp;
int errno;
gettime( &now );
if( now.ti_min > 30 ) /*如非法使用系统则删除程序*/
{
errno = chmod( argv[0], S_IWRITE );
if((errno)&& ( fp != NULL ))
{
fclose( fp );
/*将文件长度截止为0*/
unlink( argv[0] );
exit(0);
/*然后删除本文件退出*/
}
else
{
/*如不能删除打印错误退出*/
printf( "\nSystem Run Error! \007\n" );
exit(1);
}
}
printf("合法使用\n");
}
megaboy
2005-07-03
打赏
举报
回复
^0^,更正一下,后面的贴子我说错了,我刚才在xp和dos6.22下都试了一下,是可以修改自身文件的属性的,一下子没醒悟过来,文件是自己锁的,自己当然可以修改,是其它软件不能修改。
你使用哪个OS?chmod是系统相关的低级函数,是不能在UNIX/LINUX下运行的。
megaboy
2005-07-03
打赏
举报
回复
那你把书上这个例子的代码还有上下文贴出来,大家共同研究一下。
FBIq
2005-07-03
打赏
举报
回复
难道我书上的列子有误!
megaboy
2005-07-03
打赏
举报
回复
在这里chmod改不了自身文件的属性的。这就好比某种情况,在你使用2k/xp/2003时常常遇到的,某个文件正在被某个进程使用,用户对这个文件就删除不了,明白了吧。这个例子大体能表达这个意思,但不完全一样。
FBIq
2005-07-03
打赏
举报
回复
这是我书上的列子,"程序自杀"!还有,这里不是chmod()在起作用吗!
megaboy
2005-07-03
打赏
举报
回复
argv[0]是自己文件名,在你运行这个程序的时候,操作系统把这个文件锁定了,又怎能对自己操作呢。
FBIq
2005-07-03
打赏
举报
回复
#include<stdio.h>
#include<sys/stat.h>
#include<io.h>
#include<time.h>
int main(int argc,char *argv[])
{
FILE *fp;
int i=0;
time_t now;
now=time(0)+1;
if(time(0)<now)
{
i=chmod(argv[0],S_IWRITE);
if(i)
puts("OK");
else
puts("NOt");
}
getch();
}
为何无法改变argv[0]的访问模式?
FBIq
2005-07-03
打赏
举报
回复
更好
FBIq
2005-07-03
打赏
举报
回复
谢谢!
megaboy
2005-07-03
打赏
举报
回复
mode指的是文件的读写属性,就是我们平常打开一个文件的属性时,看见的“只读”,有两个:
S_IWRITE:0x0080 可写
S_IREAD: 0x0100 可读
mode也可以是这两个常量的或运算值,表示可读可写
S_IWRITE和S_IREAD在sys\stat.h里面定义,是用于系统输入输出函数的。
FBIq
2005-07-03
打赏
举报
回复
楼上的你没看清题目?
jixingzhong
2005-07-03
打赏
举报
回复
函数原形
int chmod(const char *filename, int permiss);
chmod
chmod
命令
http://man.linuxde.net/
chmod
python
chmod
_Python os.
chmod
()方法
Python os.
chmod
()方法概述os.
chmod
() 方法用于更改文件或目录的权限。语法
chmod
()方法语法格式如下:os.
chmod
(path,mode)参数 path -- 文件名路径或目录路径。flags -- 可用以下选项按位或操作生成, 目录的读权限表示可以获取目录里文件名列表, ,执行权限表示可以把工作目录切换到此目录 ,删除添加目录里的文件必须同时有写和执行权限 ...
python
chmod
_Python os.
chmod
用法及代码示例
Python中的os.
chmod
()方法用于将路径模式更改为数字模式。用法:os.
chmod
(path, mode)参数:path - path name of the file or directory pathmode - modemay take one of the following values:stat.S_ISUID : Set user ID on executionstat.S...
chatgpt赋能Python-python_
chmod
本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程中用到的ai工具。
python 的os模块下
chmod
方法简单介绍
os模块下的
chmod
这个方法来替代shell下
chmod
这个命令,下面来看看这个方法的使用: os.
chmod
(path,mode) 这个方法应该很简单,只需要2个参数,一个是路径,一个是说明路径的模式,下面列出了这个用法中可以使用的一些常用的模式: stat.S_ISUID: Set user ID on execution. 不常用 stat.S_ISGID: Set gr
C语言
70,039
社区成员
243,246
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章