Fråga : Behöv att iterate till och med alla sparar i en dir i perl och kopierar dem någon annanstans

Hi förmiddagläsning för

I till och med en överträffa täcker och att välja ut ett unix läge som där går, och därefter pröva att kopiera all .txt sparar därifrån in i en annan jämn up.

I förmiddag för arkiv som ett får detta fel. Pls help.

-------------------------------------------

Use av uninitialized värderar i sammanlänkning (.) eller stränga på Copy_Baseline.pl på geggameddelandet line.
/ms/user/s/sayantag/Baseline/
-------------------------------------------


> för
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
" codeBody " " ># för class= " för new (); mitt $new_workbook = $new_parser->parse (CFP. ”Source.xls”); min $new_worksheet; mitt $curr_etl = ”wf_OTC_Taxlots_Open”; för $new_worksheet ($new_workbook->worksheets ()) { om inte därefter eq ”WF” för $new_worksheet-> {namnge}; #print ”xyb”; mitt ($row_min, $row_max) = $new_worksheet->row_range (); mitt ($col_min, $col_max) = $new_worksheet->col_range (); för min $row ($row_min. $row_max) {##Firstfor## för min $col ($col_min. $col_max) {##Secondfor## mitt $cell = $new_worksheet->get_cell ($row, $col); om ($col==0 && $row! && =0 ($new_worksheet->get_cell ($row, $col) - >valueeq ”$curr_etl”)) { mitt $wf_loc = $new_worksheet->get_cell ($row, $col+2) - >value; chdir ($wf_loc) eller matris ”$! ”; tryck ”$wf_loc”; min @delta_files = gegga ”$ARGV [0] *.txt”; foreach min $txt_file (@delta_files) { `för `- cp $txt_file ../Delta_ETL/; } } } } }
" klar "

Svar : Behöv att iterate till och med alla sparar i en dir i perl och kopierar dem någon annanstans

Ändrande för att matcha dina uppdateringar du postade stunder som jag var handstil det…,
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
nr.! /usr/bin/perl5.10

nr. - w är överflödig med bruksvarningar
använd varningar;
bruksräkneark:: WriteExcel:: Stort;
bruksräkneark:: ParseExcel;
använd strikt;
bruk IO:: Scalar;
bruksdata:: Dumper;
bruk sparar:: Kopiera qw (cp);

mitt CFP = ”/ms/user/s/sayantag/”;
mitt $new_parser   = räkneark:: ParseExcel->new ();
mitt $new_workbook = $new_parser->parse (CFP. ”Source.xls”);

mitt $curr_etl = ”wf_OTC_Taxlots_Open”;
mitt $wf_name = substr $curr_etl, 3;
skriv ut ”den kända workflowen är $wf_name \ n”;

för  min $new_worksheet ($new_workbook->worksheets ()) {
    om inte därefter eq ”WF” för $new_worksheet-> {namnge};
    #print ”xyb”;
    mitt ($row_min, $row_max) = $new_worksheet->row_range ();
    mitt ($col_min, $col_max) = $new_worksheet->col_range ();

    för min $row ($row_min. $row_max) {##Firstfor##
        mitt $cell = $new_worksheet->get_cell ($row, 0);
        om (definierad $cell- och $cell-->valueeq $curr_etl)  {
            mitt >value för $wf_loc = för $new_worksheet->get_cell ($row, 2) -;

            tryck ”$wf_loc”;

            opendir DIR, $wf_loc
                eller matrisen ”kunde inte öppna $wf_loc: $! ”;
            min @delta_files = grep M {_Baselinen för ^delta_$ {wf_name} \ .txt$}, readdir DIR;
            closedir DIR;

            foreach min $txt_file (@delta_files) {
                cp ”$wf_loc/$txt_file” ”$wf_loc/. /Delta_ETL/$txt_file”,
                    eller matrisen ”kunde inte cpen $wf_loc/$txt_file: $! ”;
            }
        }
    }
}
Andra lösningar  
 
programming4us programming4us