⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cpmv.c

📁 <B>Digital的Unix操作系统VAX 4.2源码</B>
💻 C
字号:
#ifndef lintstatic char sccsid[] = "@(#)cpmv.c	4.1 (decvax!larry) 7/2/90";#endif#include "uucp.h"#include <sys/types.h>#include <sys/stat.h>/*** *	xcp(f1, f2)	copy f1 to f2 *	char *f1, *f2; * *	return - 0 ok  |  FAIL failed * * *	decvax!larry -  copy modified path back to pointer *//************************************************************************ *									* *			Copyright (c) 1984 by				* *		Digital Equipment Corporation, Maynard, MA		* *			All rights reserved.				* *									* *   This software is furnished under a license and may be used and	* *   copied  only  in accordance with the terms of such license and	* *   with the  inclusion  of  the  above  copyright  notice.   This	* *   software  or  any  other copies thereof may not be provided or	* *   otherwise made available to any other person.  No title to and	* *   ownership of the software is hereby transferred.			* *									* *   This software is  derived  from  software  received  from  the	* *   University    of   California,   Berkeley,   and   from   Bell	* *   Laboratories.  Use, duplication, or disclosure is  subject  to	* *   restrictions  under  license  agreements  with  University  of	* *   California and with AT&T.						* *									* *   The information in this software is subject to change  without	* *   notice  and should not be construed as a commitment by Digital	* *   Equipment Corporation.						* *									* *   Digital assumes no responsibility for the use  or  reliability	* *   of its software on equipment which is not supplied by Digital.	* *									* ************************************************************************/xcp(f1, f2)register char *f1, *f2;{	char buf[BUFSIZ];	int len;	register FILE *fp1, *fp2;	char *lastpart();	char full[100];	struct stat s;	if ((fp1 = fopen(subfile(f1), "r")) == NULL) {		DEBUG(9, "can't open to read %s", subfile(f1));		return(FAIL);	}	strcpy(full, f2);	if (stat(subfile(f2), &s) == 0) {		/* check for directory */		if ((s.st_mode & S_IFMT) == S_IFDIR) {			strcat(full, "/");			strcat(full, lastpart(f1));			/* calling program should know new name - decvax!larry*/			strcpy(f2, full);		}	}	DEBUG(4, "full %s\n", full);	if ((fp2 = fopen(subfile(full), "w")) == NULL) {		fclose(fp1);		return(FAIL);	}	while((len = fread(buf, sizeof (char), BUFSIZ, fp1)) > 0)		fwrite(buf, sizeof (char), len, fp2);	fclose(fp1);	fclose(fp2);	return(0);}/* *	xmv(f1, f2)	move f1 to f2 *	char * f1, *f2; * *	return  0 ok  |  FAIL failed */xmv(f1, f2)register char *f1, *f2;{	int ret;	if (link(subfile(f1), subfile(f2)) < 0) {		/*  copy file  */		ret = xcp(f1, f2);		if (ret == 0)			unlink(subfile(f1));		return(ret);	}	unlink(subfile(f1));	return(0);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -