Sponsored Content
Top Forums Shell Programming and Scripting Copy an array to a newly created directory Post 302788551 by Skrynesaver on Tuesday 2nd of April 2013 04:26:18 AM
Old 04-02-2013
What that if statement achieves is a check on the successful concatenation of the results of performing 2 separate regex checks /check_geomtools.exe:/ and /\.lib$/.

I take it you actually want to match a line of the form:
Code:
/check_geomtools.exe:/.*\.lib$/

Your split probably wants to be on just a colon, rather than a colon followed by a space.

Your bizarre assumption that the split statement would result in a multi-dimensional array is incorrect...

So taking these on board...
Code:
#!/usr/bin/perl

use strict;     #These two lines will
use warnings; # save you hours of debugging time
use File::Copy;

my $my_file = "makefile";
open(my $makefile,'<', "$my_file");


while(<$makefile>)
{
	if(/check_geomtools.exe:.*./\.lib$/)
	{
        chomp;
	my (@libs = split(/:/,$_));
	 mkdir "Scratch";
	 foreach my $my_libs(@libs)
	 {
		copy($my_libs, Scratch)
	 }

	}
	 	
}

 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

How to FTP all newly created but the current open file?

An application running on HP-UX constantly generates new text log files ( I think using logpipe ). Any new file created requires to be ftp'ed to an offline server, however I want to make sure that the current file being written should not be transferred. For examples consider the following files... (3 Replies)
Discussion started by: indianya
3 Replies

2. UNIX for Dummies Questions & Answers

Newly created files default group and write permissions

Whenever I create a new file the group name is "dnn" and the file permissions are "-rw-r--r--". How do I get it so when I create files (with vi or other programs) that the default group is "sss" and the permissions are 770? (I am running HP-UNIX) Thanks, GoldFish (2 Replies)
Discussion started by: goldfish
2 Replies

3. Shell Programming and Scripting

How to keep appending a newly created file based on some keywords

Hi Friends, I have to create a new log file everyday and append it with content based on some keywords found in another log file. Here is what I have tried so far... grep Error /parentfolder/someLogFile.log >> /parentfolder /Archive/"testlogfile_error_`date '+%d%m%y'`.txt" grep error... (6 Replies)
Discussion started by: supreet
6 Replies

4. Shell Programming and Scripting

To copy a a file to last created directory..Urgent pls

I need to copy a file example hhh.txt to the recently created directory by name flexite@latesttimestamp in the path interface/home/ ... I couldnt get the name of recently created directory .... first result of ls -lst ...that is ls -lst |head -2 gives the latest directory but i could not... (2 Replies)
Discussion started by: helloo
2 Replies

5. Shell Programming and Scripting

How to find the newly created directory

Hi, I need to create new directory by increasing the number by 1 of extracted lastly created directory. e.g. Log\out_log_1\ Log\out_log_2\ Log\out_log_3\ become Log\out_log_1\ Log\out_log_2\ Log\out_log_3\ Log\out_log_4\ Can anyone help how to do it in c-shell... (3 Replies)
Discussion started by: Andre_2008
3 Replies

6. Shell Programming and Scripting

sftp - get newly created files on incremental basis

Hi, We have a sftp server which creates files daily and keeps 6 months of files on the server. We are creating a daily job to get the files and load into database. My problem is "how to get ONLY those files which got created after my last get". Let me provide some more details to it. Below... (15 Replies)
Discussion started by: ravi.videla
15 Replies

7. UNIX for Advanced & Expert Users

default size of a newly created folder

Hi all, In linux how to create a directory with specified size, so that it can be used only up to the mentioned size. Actually my question is, whether we can do directory quota in linux. mounting the directory in a partiton will do that, but do we have any other option... (1 Reply)
Discussion started by: anishkumarv
1 Replies

8. Solaris

Can't see Newly created LUN by SAN admin

hello, i am an oracle DBA and trying to scan a newly created LUN of 200 GB on fiber channel by SAN admin.we have solaris 10 and SANtoolkit is installed.i tried following to get the new LUN at my machine. go /opt/Netapp/Santoolkit/bin and then ./sanlun lun show but i see only the existing... (12 Replies)
Discussion started by: janakors
12 Replies

9. Hardware

Formatting a newly created lun

Hi , I have created one new lun in my SAN storage and make it visible to my HP servers , but the fdisk -l output is somehow confusing. Do not know what to do next ---------- fdisk -l /dev/sdo1 Disk /dev/sdo1 (Sun disk label): 64 heads, 32 sectors, 10238 cylinders Units =... (7 Replies)
Discussion started by: mishra.sankar
7 Replies

10. AIX

No iscsi available in newly created AIX wpar

AIX 7.1 New to WPAR, hopefully just missing something simple here. Creating the WPAR like this..... (The box where the WPAR is hosted does have an iscsi protocol device) mkwpar -h wpar08 -l -n wpar08 -N interface=en0 address=xxx.xx.xx.xxx netmask=255.255.255.0 -D devname=/dev/iscsi0 -D... (0 Replies)
Discussion started by: TomR
0 Replies
PERLNETWARE(1)						 Perl Programmers Reference Guide					    PERLNETWARE(1)

NAME
perlnetware - Perl for NetWare DESCRIPTION
This file gives instructions for building Perl 5.7 and above, and also Perl modules for NetWare. Before you start, you may want to read the README file found in the top level directory into which the Perl source code distribution was extracted. Make sure you read and understand the terms under which the software is being distributed. BUILD
This section describes the steps to be performed to build a Perl NLM and other associated NLMs. Tools & SDK The build requires CodeWarrior compiler and linker. In addition, the "NetWare SDK", "NLM & NetWare Libraries for C" and "NetWare Server Protocol Libraries for C", all available at <http://developer.novell.com/wiki/index.php/Category:Novell_Developer_Kit>, are required. Microsoft Visual C++ version 4.2 or later is also required. Setup The build process is dependent on the location of the NetWare SDK. Once the Tools & SDK are installed, the build environment has to be setup. The following batch files setup the environment. SetNWBld.bat The Execution of this file takes 2 parameters as input. The first being the NetWare SDK path, second being the path for CodeWarrior Compiler & tools. Execution of this file sets these paths and also sets the build type to Release by default. Buildtype.bat This is used to set the build type to debug or release. Change the build type only after executing SetNWBld.bat Example: 1. Typing "buildtype d on" at the command prompt causes the buildtype to be set to Debug type with D2 flag set. 2. Typing "buildtype d off" or "buildtype d" at the command prompt causes the buildtype to be set to Debug type with D1 flag set. 3. Typing "buildtype r" at the command prompt sets it to Release Build type. Make The make process runs only under WinNT shell. The NetWare makefile is located under the NetWare folder. This makes use of miniperl.exe to run some of the Perl scripts. To create miniperl.exe, first set the required paths for Visual c++ compiler (specify vcvars32 location) at the command prompt. Then run nmake from win32 folder through WinNT command prompt. The build process can be stopped after miniperl.exe is created. Then run nmake from NetWare folder through WinNT command prompt. Currently the following two build types are tested on NetWare: o USE_MULTI, USE_ITHREADS & USE_IMP_SYS defined o USE_MULTI & USE_IMP_SYS defined and USE_ITHREADS not defined Interpreter Once miniperl.exe creation is over, run nmake from the NetWare folder. This will build the Perl interpreter for NetWare as perl.nlm. This is copied under the Release folder if you are doing a release build, else will be copied under Debug folder for debug builds. Extensions The make process also creates the Perl extensions as <Extension.nlm> INSTALL
To install NetWare Perl onto a NetWare server, first map the Sys volume of a NetWare server to i:. This is because the makefile by default sets the drive letter to i:. Type nmake nwinstall from NetWare folder on a WinNT command prompt. This will copy the binaries and module files onto the NetWare server under sys:Perl folder. The Perl interpreter, perl.nlm, is copied under sys:perlsystem folder. Copy this to sys:system folder. Example: At the command prompt Type "nmake nwinstall". This will install NetWare Perl on the NetWare Server. Similarly, if you type "nmake install", this will cause the binaries to be installed on the local machine. (Typically under the c:perl folder) BUILD NEW EXTENSIONS
To build extensions other than standard extensions, NetWare Perl has to be installed on Windows along with Windows Perl. The Perl for Windows can be either downloaded from the CPAN site and built using the sources, or the binaries can be directly downloaded from the ActiveState site. Installation can be done by invoking nmake install from the NetWare folder on a WinNT command prompt after building NetWare Perl by following steps given above. This will copy all the *.pm files and other required files. Documentation files are not copied. Thus one must first install Windows Perl, Then install NetWare Perl. Once this is done, do the following to build any extension: o Change to the extension directory where its source files are present. o Run the following command at the command prompt: perl -II<path to NetWare lib dir> -II<path to lib> Makefile.pl Example: perl -Ic:/perl/5.6.1/lib/NetWare-x86-multi-thread -Ic:perl5.6.1lib MakeFile.pl or perl -Ic:/perl/5.8.0/lib/NetWare-x86-multi-thread -Ic:perl5.8.0lib MakeFile.pl o nmake o nmake install Install will copy the files into the Windows machine where NetWare Perl is installed and these files may have to be copied to the NetWare server manually. Alternatively, pass INSTALLSITELIB=i:perllib as an input to makefile.pl above. Here i: is the mapped drive to the sys: volume of the server where Perl on NetWare is installed. Now typing nmake install, will copy the files onto the NetWare server. Example: You can execute the following on the command prompt. perl -Ic:/perl/5.6.1/lib/NetWare-x86-multi-thread -Ic:perl5.6.1lib MakeFile.pl INSTALLSITELIB=i:perllib or perl -Ic:/perl/5.8.0/lib/NetWare-x86-multi-thread -Ic:perl5.8.0lib MakeFile.pl INSTALLSITELIB=i:perllib o Note: Some modules downloaded from CPAN may require NetWare related API in order to build on NetWare. Other modules may however build smoothly with or without minor changes depending on the type of module. ACKNOWLEDGEMENTS
The makefile for Win32 is used as a reference to create the makefile for NetWare. Also, the make process for NetWare port uses miniperl.exe to run scripts during the make and installation process. AUTHORS
Anantha Kesari H Y (hyanantha@novell.com) Aditya C (caditya@novell.com) DATE
o Created - 18 Jan 2001 o Modified - 25 June 2001 o Modified - 13 July 2001 o Modified - 28 May 2002 perl v5.18.2 2014-01-06 PERLNETWARE(1)
All times are GMT -4. The time now is 06:55 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy