?? mksrcfiles
字號:
#!/usr/bin/env perl# Make list of files containing source code. The source list contains all# .F90, .F, and .c files in a specified list of directories. The# directories are specified one per line in a file called Filepath which# this script tries to open in the current directory. The current# directory is prepended to the specified list of directories. If Filepath# doesn't exist then only the source files in the current directory are# listed.# The list of source files is written to the file Srcfiles.# Check usage:@ARGV == 0 or usage();open(SRC,"> Srcfiles") or die "Can't open Srcfiles\n";if ( open(FILEPATH,"< Filepath") ) { @paths = <FILEPATH>;} else { @paths = ();}chomp @paths;unshift(@paths, '.');foreach $dir (@paths) { # (could check that directories exist here) $dir =~ s!/?\s*$!!; # remove / and any whitespace at end of directory name ($dir) = glob $dir; # Expand tildes in path names.}# Loop through the directories and add each filename as a hash key. This# automatically eliminates redunancies.%src = ();foreach $dir (@paths) { @filenames = (glob("$dir/*.[Fc]"), glob("$dir/*.F90")); foreach $filename (@filenames) { $filename =~ s!.*/!!; # remove part before last slash $src{$filename} = ""; }}foreach $file ( sort keys %src ) { print SRC "$file\n";}#--------------------------------------------------------------------------------------sub usage { ($ProgName = $0) =~ s!.*/!!; # name of program die <<EOFSYNOPSIS $ProgNameDESCRIPTION The $ProgName utility assumes the existence of an input file ./Filepath, and writes an output file ./Srcfiles that contains the names of all the files that match the patterns *.F90, *.F, and *.c in all the directories from ./Filepath plus ./. The files are listed one per line.EOF}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -