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

📄 log

📁 MSYS在windows下模拟了一个类unix的终端
💻
字号:
#! /bin/perl# -*-Perl-*-## XXX: FIXME: handle multiple '-f logfile' arguments## XXX -- I HATE Perl!  This *will* be re-written in shell/awk/sed soon!## Usage:  log.pl [-u user] [[-m mailto] ...] [-s] -f logfile 'dirname file ...'##	-u user		- $USER passed from loginfo#	-m mailto	- for each user to receive cvs log reports#			(multiple -m's permitted)#	-s		- to prevent "cvs status -v" messages#	-f logfile	- for the logfile to append to (mandatory,#			but only one logfile can be specified).# here is what the output looks like:##    From: woods@kuma.domain.top#    Subject: CVS update: testmodule##    Date: Wednesday November 23, 1994 @ 14:15#    Author: woods##    Update of /local/src-CVS/testmodule#    In directory kuma:/home/kuma/woods/work.d/testmodule#    #    Modified Files:#    	test3 #    Added Files:#    	test6 #    Removed Files:#    	test4 #    Log Message:#    - wow, what a test## (and for each file the "cvs status -v" output is appended unless -s is used)##    ==================================================================#    File: test3           	Status: Up-to-date#    #       Working revision:	1.41	Wed Nov 23 14:15:59 1994#       Repository revision:	1.41	/local/src-CVS/cvs/testmodule/test3,v#       Sticky Options:	-ko#    #       Existing Tags:#    	local-v2                 	(revision: 1.7)#    	local-v1                 	(revision: 1.1.1.2)#    	CVS-1_4A2                	(revision: 1.1.1.2)#    	local-v0                 	(revision: 1.2)#    	CVS-1_4A1                	(revision: 1.1.1.1)#    	CVS                      	(branch: 1.1.1)$cvsroot = $ENV{'CVSROOT'};# turn off setgid#$) = $(;$dostatus = 1;# parse command line arguments#while (@ARGV) {        $arg = shift @ARGV;	if ($arg eq '-m') {                $users = "$users " . shift @ARGV;	} elsif ($arg eq '-u') {		$login = shift @ARGV;	} elsif ($arg eq '-f') {		($logfile) && die "Too many '-f' args";		$logfile = shift @ARGV;	} elsif ($arg eq '-s') {		$dostatus = 0;	} else {		($donefiles) && die "Too many arguments!\n";		$donefiles = 1;		@files = split(/ /, $arg);	}}# the first argument is the module location relative to $CVSROOT#$modulepath = shift @files;$mailcmd = "| Mail -s 'CVS update: $modulepath'";# Initialise some date and time arrays#@mos = (January,February,March,April,May,June,July,August,September,        October,November,December);@days = (Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday);($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime;$year += 1900;# get a login name for the guy doing the commit....#if ($login eq '') {	$login = getlogin || (getpwuid($<))[0] || "nobody";}# open log file for appending#open(OUT, ">>" . $logfile) || die "Could not open(" . $logfile . "): $!\n";# send mail, if there's anyone to send to!#if ($users) {	$mailcmd = "$mailcmd $users";	open(MAIL, $mailcmd) || die "Could not Exec($mailcmd): $!\n";}# print out the log Header# print OUT "\n";print OUT "****************************************\n";print OUT "Date:\t$days[$wday] $mos[$mon] $mday, $year @ $hour:" . sprintf("%02d", $min) . "\n";print OUT "Author:\t$login\n\n";if (MAIL) {	print MAIL "\n";	print MAIL "Date:\t$days[$wday] $mos[$mon] $mday, $year @ $hour:" . sprintf("%02d", $min) . "\n";	print MAIL "Author:\t$login\n\n";}# print the stuff from logmsg that comes in on stdin to the logfile#open(IN, "-");while (<IN>) {	print OUT $_;	if (MAIL) {		print MAIL $_;	}}close(IN);print OUT "\n";# after log information, do an 'cvs -Qq status -v' on each file in the arguments.#if ($dostatus != 0) {	while (@files) {		$file = shift @files;		if ($file eq "-") {			print OUT "[input file was '-']\n";			if (MAIL) {				print MAIL "[input file was '-']\n";			}			last;		}		$pid = open(RCS, "-|");		if ( !defined $pid )		{			die "fork failed: $!";		}		if ($pid == 0)		{			exec 'cvs', '-nQq', 'status', '-v', $file;			die "cvs exec failed: $!";		}		while (<RCS>) {			print OUT;			if (MAIL) {				print MAIL;			}		}		close(RCS);	}}close(OUT);die "Write to $logfile failed" if $?;close(MAIL);die "Pipe to $mailcmd failed" if $?;## must exit cleanly##exit 0;

⌨️ 快捷键说明

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