<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Filename Pipe X Command -- Limitations? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629107#M185997</link>
    <description>&lt;P&gt;Do you have an admin for the WIndows Server machine that can check what is happening?&lt;BR /&gt;Can you switch to 7z instead?&amp;nbsp; I haven't used Winzip in 10+ years.&lt;/P&gt;</description>
    <pubDate>Tue, 03 Mar 2020 12:51:46 GMT</pubDate>
    <dc:creator>Tom</dc:creator>
    <dc:date>2020-03-03T12:51:46Z</dc:date>
    <item>
      <title>Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/628978#M185926</link>
      <description>&lt;P&gt;I'm running SAS 9.4 M6 on a 64 bit Windows Server 2016 machine.&amp;nbsp; I'm using WnZip.exe to zip files as part of a FILENAME PIPE.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For example:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;FILENAME	WinOpSys	PIPE	"&amp;amp;ZipPgmPath. -a ""&amp;amp;Zip_File."" ""&amp;amp;Full_File."""	LRECL=&amp;amp;LRECL;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;So long as the files are below about 8 Gb in (unzipped) size, all is well and good.&amp;nbsp; Log excerpt:&lt;/P&gt;
&lt;PRE&gt;       +-----------------------------------------------------------------------------------------------------------------+
NOTE:  | Start Zip at 2020-03-02 12:33:42.20.                                                                            |
       | WinZip(R) Command Line Support Add-On Version 4.0 64-bit (Build 10562)                                          |
       | Copyright (c) 1991-2013 WinZip International LLC - All Rights Reserved                                          |
       |                                                                                                                 |
       | Updating plans.sas7bdat                                                                                         |
       | Total bytes=4653056, Compressed=381416 -&amp;gt; 92 percent savings.                                                   |
       |                                                                                                                 |
       | Replacing old Zip file "I:\Commercial\monthly_data\Cornerstone\archive\Stg\Plans_Archive_2020-03-02_1203.zip".  |
       |                                                                                                                 |
       | End Zip   at 2020-03-02 12:33:42.93.                                                                            |
       | Return code from zipping Plans.sas7bdat = 0.                                                                    |
       +-----------------------------------------------------------------------------------------------------------------+&lt;/PRE&gt;
&lt;P&gt;But if the files are somewhere over 8 to 10 Gb, the Zipping just hangs.&amp;nbsp; It neither completes nor fails.&amp;nbsp; There's no message, there's no error code or SYSRC posted, and the job just runs and runs.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The same file when submitted manually from the command line zips just fine.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Likewise, if the file is submitted as an "X" command but&amp;nbsp;&lt;EM&gt;&lt;STRONG&gt;not&lt;/STRONG&gt;&lt;/EM&gt; as part of a FILENAME PIPE, the file zips just fine.&amp;nbsp; The only difference in the runs that work vs. those that do not is the&amp;nbsp;FILENAME PIPE.&lt;BR /&gt;&lt;BR /&gt;What are the limits on FILENAME PIPE?&amp;nbsp; And are there workarounds available? I've tried increasing memsize, but that doesn't seem to help.&amp;nbsp; I can see on repeated attempts to zip the same file, that the intermediate zip work file freezes at the same size repeatedly.&lt;BR /&gt;&lt;BR /&gt;Anyone have any light to shed on this or suggestions?&lt;BR /&gt;&lt;BR /&gt;Thank you,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jim&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;P.S.&amp;nbsp; And, yes, I can just use the "X" command exclusive of a FILENAME PIPE, but I like having access to STDOUT on a line by line basis as WinZip processes, and I like having STDERR go to the SAS log.&amp;nbsp; Therefore,&amp;nbsp;FILENAME PIPE is hardly a "do or die" necessity, but I would strongly prefer&amp;nbsp;FILENAME PIPE if I can get it to work and at a minimum would like to know what's going on and why it's different than just an "X" command alone.&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 00:12:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/628978#M185926</guid>
      <dc:creator>jimbarbour</dc:creator>
      <dc:date>2020-03-03T00:12:54Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/628983#M185929</link>
      <description>&lt;P&gt;It feels like a timeout issue. What SAS version and OS are you on. And how do you run your code?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you're on a rather recent version then have also a look into the filename ZIP engine.&lt;/P&gt;</description>
      <pubDate>Wed, 04 Mar 2020 00:39:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/628983#M185929</guid>
      <dc:creator>Patrick</dc:creator>
      <dc:date>2020-03-04T00:39:55Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/628985#M185930</link>
      <description>&lt;P&gt;Patrick,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;A time out issue?&amp;nbsp; Possibly although I would expect the job to end if it somehow timed out.&amp;nbsp; The job neither ends nor errors.&amp;nbsp; Perhaps that's a time out, but if so I'm disappointed that SAS isn't ending and returning messages and setting SYSRC.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;I'm running SAS 9.4 M6 on a 64 bit Windows Server 2016 machine.&amp;nbsp; I'm using WnZip.exe to zip files as part of a FILENAME PIPE.&amp;nbsp; &amp;nbsp;I have a code excerpt in my original post.&amp;nbsp;&amp;nbsp;We have&amp;nbsp;WinZip(R) Command Line Support Add-On Version 4.0 64-bit (Build 10562) Copyright (c) 1991-2013 WinZip International LLC. The executable is WinZp.exe.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;As for WinZp.exe, it runs fine with the exact same files -- so long as I run not as part of a FILENAME PIPE.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;There's something about running as part of a FILENAME PIPE that is causing things to hang.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Jim&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 00:59:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/628985#M185930</guid>
      <dc:creator>jimbarbour</dc:creator>
      <dc:date>2020-03-03T00:59:34Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/628995#M185937</link>
      <description>&lt;P&gt;Timeout is just a guess. Googling I haven't really found much in this direction except for SAS9.1.3&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But.... If using a recent SAS version I'd suggest to not use a pipe at all but the filename ZIP engine.&lt;/P&gt;
&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/4"&gt;@ChrisHemedinger&lt;/a&gt;&amp;nbsp;wrote &lt;A href="https://blogs.sas.com/content/sasdummy/tag/filename-zip/" target="_self"&gt;here&lt;/A&gt; quite a few blogs about it.&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 01:43:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/628995#M185937</guid>
      <dc:creator>Patrick</dc:creator>
      <dc:date>2020-03-03T01:43:55Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629002#M185943</link>
      <description>&lt;P&gt;Just some quick confirmations:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;1. Does the command run in the command line, not via pipe?&lt;/P&gt;
&lt;P&gt;2. Does the command run, via WinZip manually - You've confirmed this works fine.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;3. Is there enough space for the file to unzip or is there any possibility you're running out of space somehow?&lt;/P&gt;
&lt;P&gt;4. How are you capturing results to ensure there's no error being passed back, you didn't include that portion of your code.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Is it different than what you get from #1?&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 02:23:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629002#M185943</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2020-03-03T02:23:56Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629011#M185948</link>
      <description>&lt;P&gt;Make sure that WINZIP is not trying to ask you a question.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Also where is WINZIP writing the ZIP file?&amp;nbsp; There a probably options you can set to tell it where to write the temporary file(s) it needs to complete the action.&amp;nbsp; Most likely the default location is different when being called by your SAS process.&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 03:41:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629011#M185948</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2020-03-03T03:41:44Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629013#M185950</link>
      <description>&lt;P&gt;We don't have your code but I assume it's something along the lines of:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data _null_;
  infile WinOpSys;
  input;
  putlog _INFILE_; 
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Is that correct?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I don't see why this step should ever time out.&lt;/P&gt;
&lt;P&gt;This behavior is very odd.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Any reason you have LRECL in there? Did you have issues about this?&lt;/P&gt;
&lt;P&gt;The returned output should be pretty standard.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Lastly, my DOS commands a pretty rusty, but you could maybe try to capture &lt;STRONG&gt;stderr&lt;/STRONG&gt; by using :&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;2&amp;gt;&amp;amp;1&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 03:51:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629013#M185950</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2020-03-03T03:51:13Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629017#M185952</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13879"&gt;@Reeza&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I've run the WnZip.exe in question three ways:&lt;/P&gt;
&lt;P&gt;1.&amp;nbsp; As an X command alone.&lt;/P&gt;
&lt;P&gt;2.&amp;nbsp; As an X command embedded in a FILENAME PIPE&lt;/P&gt;
&lt;P&gt;3.&amp;nbsp; Manually from a DOS prompt (command line).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;All three work equally well &lt;EM&gt;unless &lt;/EM&gt;the file is larger than about 8Gb in which case number two, above, fails to complete; my job just gets stuck and goes nowhere.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have 3.8 Tb free on my drive.&amp;nbsp; I do not suspect a disk space shortage, but it is good that you ask since that must be considered.&amp;nbsp; In this case, zipping a 8 Gb file should not result in a space issue on a drive with multiple terabytes free.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When I run the WnZip.exe via an X command that &lt;EM&gt;&lt;STRONG&gt;is&lt;/STRONG&gt;&lt;/EM&gt; part of a FILENAME PIPE, error output (STDERR) is written automatically to the SAS log, but in this case the job neither completes nor fails, and there is no error message.&amp;nbsp; The job only "hangs" and goes nowhere.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When I run WinZp.exe as an X command that is &lt;STRONG&gt;&lt;EM&gt;not&lt;/EM&gt;&lt;/STRONG&gt; part of a FILENAME PIPE, I have had no failures, so there is no error message.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So also is there no error message when running manually from a DOS prompt.&amp;nbsp; Everything works fine.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jim&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 04:32:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629017#M185952</guid>
      <dc:creator>jimbarbour</dc:creator>
      <dc:date>2020-03-03T04:32:09Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629107#M185997</link>
      <description>&lt;P&gt;Do you have an admin for the WIndows Server machine that can check what is happening?&lt;BR /&gt;Can you switch to 7z instead?&amp;nbsp; I haven't used Winzip in 10+ years.&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 12:51:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629107#M185997</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2020-03-03T12:51:46Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629146#M186013</link>
      <description>&lt;P&gt;Your terminology is a little confusing. SAS has an X command for running operating system commands.&amp;nbsp; It also has the SYSTEM command.&amp;nbsp; You can also use the PIPE filename engine to run an operating system command.&amp;nbsp; You use the PIPE engine either in the a FILENAME statement that defines an fileref or directly in your FILE statement.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;When you use the FILENAME statement it just defines the fileref, but it does not actually try to execute the command until you try to use the file.&amp;nbsp; In your case when you try to READ from the file.&amp;nbsp; Normally that would be in a data step, but there are many other commands/functions in SAS that can read from a file.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;You did not show in the code snippet you posted how you are trying to read the file.&amp;nbsp; Are you sure that step is not getting into an infinite loop because of the different messages that WINZIP is sending for the large file?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Please clarify that you know where WINZIP is writing its TEMPORARY files for both your SAS driven calls and your interactive calls.&amp;nbsp; I seem to remember that used some Windows environment variable like, %TEMP%, by default.&amp;nbsp; I definitely in the past had to override that because our default setup on Windows was pointing to a disk that did not have enough space for WINZIP to make the temporary files it needed.&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 15:26:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629146#M186013</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2020-03-03T15:26:24Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629224#M186038</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/12447"&gt;@Patrick&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hmmm.&amp;nbsp; That's not a bad idea, using SAS itself to process the zip files.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In this case, I'm &lt;EM&gt;just&lt;/EM&gt; zipping some files, and I don't need to actually look at the contents, so I'm thinking that SAS may be a bit less efficient than just using&amp;nbsp;wzzip.exe directly.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;What I'm doing is backing up a directory a few days before a monthly production job will update all the files.&lt;/P&gt;
&lt;P&gt;I have a macro, %archive_dir, that gets all the names of sas7bdat or sas7bndx files and passes them to another macro, %archive_data, that calls wzzip.exe via an "X" command to zip the files into a Zip Archive that is saved into a sub directory.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I&amp;nbsp;&lt;EM&gt;think&lt;/EM&gt; wzzip.exe is going to be a lot more efficient for this purpose than reading each file line by line with a SAS program and then writing that file out with the ZIP parameter on a Libname.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The suggestion however is a good one, and I have certainly used the ZIP parameter on a libname in cases where I need to actually work with the data at the record level and &lt;EM&gt;then&lt;/EM&gt; zip it.&amp;nbsp; And of course, generally any reference to&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/4"&gt;@ChrisHemedinger&lt;/a&gt; 's blog is well taken.&amp;nbsp; &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jim&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 19:16:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629224#M186038</guid>
      <dc:creator>jimbarbour</dc:creator>
      <dc:date>2020-03-03T19:16:54Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629229#M186040</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/159"&gt;@Tom&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;That's a good point to double check that wzzip.exe isn't prompting me for something.&amp;nbsp; However, when I execute the exact same commands via a stand alone X command or manually from a DOS prompt, there is no dialog, so I'm not thinking at this juncture that that is the issue.&amp;nbsp; In those cases where I use the X command not stand alone but embedded in a FILENAME PIPE, I do capture both STDOUT and STDERR, so I should be able to see any dialog -- but I am not.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Wzzip.exe is writing to a sub-directory named Archive.&amp;nbsp; In my macro, I call another macro, cd.&amp;nbsp; "cd" stand for Change Directory, and it changes the SAS working directory via the&amp;nbsp;DLGCDIR function.&amp;nbsp; I believe the macro is working correctly because 1) I can see a note in the SAS log (see below) and 2) because I can see the intermediate work files as Wzzip.exe processes the sas7bdat/sas7bndx files.&lt;/P&gt;
&lt;PRE&gt;NOTE: The current working directory is now "I:\Commercial\monthly_data\Cornerstone\archive\Stg".
&lt;/PRE&gt;
&lt;P&gt;If it were helpful, I could post a screen shot of the "hung" intermediate files.&amp;nbsp; I can watch them incrementally grow until at some point they freeze and the SAS job freezes as well.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;To your point, it could be that Wzzip.exe is expecting some kind of response, but given that when the same commands are executed manually via a DOS prompt or via a stand alone X command there is no dialog, I'm not thinking that's the issue.&amp;nbsp; I may however try doing a redirect of STDERR to the SAS log per&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/16961"&gt;@ChrisNZ&lt;/a&gt;&amp;nbsp;'s suggestion, just to double check.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jim&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 19:28:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629229#M186040</guid>
      <dc:creator>jimbarbour</dc:creator>
      <dc:date>2020-03-03T19:28:35Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629233#M186043</link>
      <description>&lt;P&gt;You should definitely figure out how to tell Winzip where to write its temporary files.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I sounds like you are zipping multiple files into one ZIP file.&amp;nbsp; So what it most likely is doing is reading the files one by one, compressing them and then adding them to the "archive", the ZIP file.&amp;nbsp; So that is probably why you see it working and making progress, then it hits some large file and it does not have enough room to create the compressed version of that file and is getting hung.&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 19:38:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629233#M186043</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2020-03-03T19:38:10Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629274#M186061</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/159"&gt;@Tom&lt;/a&gt;&amp;nbsp;&amp;nbsp;and&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/16961"&gt;@ChrisNZ&lt;/a&gt;&amp;nbsp;,&lt;BR /&gt;&lt;BR /&gt;Let me post some additional code.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here is the essential code, in my macro.&amp;nbsp; I can post the entire macro if that's helpful, but a lot of the code is housekeeping.&lt;/P&gt;
&lt;P&gt;First, there is a FILENAME PIPE with an X command embedded in it.&amp;nbsp; The X command executes wzzip.exe.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;FILENAME	WinOpSys	PIPE		"&amp;amp;ZipPgmPath. -a ""&amp;amp;Zip_File."" ""&amp;amp;Full_File.""";&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;amp;ZipPgmPath is the fully qualified zip program, wzzip.exe.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%LET	ZipPgmPath						=	E:\%STR("")Program Files%STR("")\WinZip\wzzip.exe;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;amp;Zip_File is the fully qualified Zip Archive, i.e. this is the path and file name of the .zip file I am creating.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;amp;Full_File is the fully qualified sas data that I want to zip into the Zip Archive.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Pretty straightforward, and when executed alone (not part of a FILENAME PIPE) or manually from a DOS prompt, works fine.&amp;nbsp; It also works very well with file sizes less than 8 Gb.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Then I read the STDOUT coming back from wzzip.exe using a DATA step:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;DATA	_NULL_;
	LENGTH	_Curr_DateTime	$23;
	LENGTH	_Line			$255;
	LENGTH	_RC				4.;
	LENGTH	_First_Time		3.;
	LENGTH	_Total_Bytes	3.;

	RETAIN	_First_Time		1;
	RETAIN	_Total_Bytes	0;

	IF	_First_Time										THEN
		DO;
			_First_Time					=	0;
			PUTLOG	"&amp;amp;Nte2  %Format_Dashes(&amp;amp;Width)";
*						_Curr_DateTime				=	TRANWRD(PUT(DATETIME(), E8601DT23.2), 'T', ' ');
*						_Line						=	RESOLVE(CAT('&amp;amp;Nte1  %Format_Line(Start Zip at ', STRIP(_Curr_DateTime), '., &amp;amp;Width)'));
*						PUTLOG	_Line;
		END;

	INFILE	WinOpSys	TRUNCOVER	
						END				=	_Zip_Process_Complete
						LENGTH			=	_SAS_Length
						;
	INPUT	_WinZip_Msg	$VARYING32766.		_SAS_Length;

	_Line								=	RESOLVE(CAT('&amp;amp;Nte2  %Format_Line(%STR(', STRIP(_WinZip_Msg), '), &amp;amp;Width)'));
	PUTLOG	_Line;

	IF	INDEX(_WinZip_Msg, 'Total bytes=')				THEN
		DO;
			&amp;amp;Cmnt	PUTLOG	"&amp;amp;Nte2  | 'Total bytes=' has been found";
			_Total_Bytes				=	1;
		END;

	IF	_Zip_Process_Complete							THEN
		DO;
			IF	NOT	_Total_Bytes						THEN
				DO;
					PUTLOG	"&amp;amp;Warn2  %Format_Dashes(&amp;amp;Width)";
					_Line				=	RESOLVE(CAT('&amp;amp;Warn1  %Format_Line(&amp;amp;sQuote.Total bytes=&amp;amp;sQuote. not returned by WinZip, &amp;amp;Width)'));
					PUTLOG	_Line;
					_Line				=	RESOLVE(CAT('&amp;amp;Warn2  %Format_Line(Results are suspect.  Check zip archive., &amp;amp;Width)'));
					PUTLOG	_Line;
					PUTLOG	"&amp;amp;Warn2  %Format_Dashes(&amp;amp;Width)";
					_RC					=	INPUT(SYMGET('SysRC'), 4.);
					IF	_RC				&amp;lt;	4			THEN
						DO;
							&amp;amp;Cmnt	PUTLOG	"&amp;amp;Nte2  Setting SYSCC and SYSRC to 4";
							CALL	SYMPUTX('SYSCC', '4', 'G');
							CALL	SYMPUTX('SYSRC', '4', 'G');
						END;
				END;
			_Curr_DateTime				=	TRANWRD(PUT(DATETIME(), E8601DT23.2), 'T', ' ');
			_Line						=	RESOLVE(CAT('&amp;amp;Nte2  %Format_Line(End Zip at ', STRIP(_Curr_DateTime), '., &amp;amp;Width)'));
			PUTLOG	_Line;

			_RC							=	INPUT(SYMGET('SysRC'), 4.);

			IF	_RC						=	0			THEN
				DO;
					PUTLOG	"&amp;amp;Nte2  %Format_Line(Return code from zipping &amp;amp;File_Name = 0., &amp;amp;Width)";
					PUTLOG	"&amp;amp;Nte2  %Format_Dashes(&amp;amp;Width)";
					PUTLOG	"&amp;amp;Nte2  ";
				END;
			ELSE
				DO;
					PUTLOG	"&amp;amp;Err2  %Format_Dashes(&amp;amp;Width)";
					_Line				=	RESOLVE(CAT('&amp;amp;Err1  %Format_Line(Return code from zipping &amp;amp;File_Name = ', STRIP(PUT(_RC, 4.)), '., &amp;amp;Width)'));
					PUTLOG	_Line;
					PUTLOG	"&amp;amp;Err2  %Format_Dashes(&amp;amp;Width)";
					PUTLOG	"&amp;amp;Err2  ";
				END;
		END;
RUN;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;The use of %Format_Dashes and %Format_Line just takes whatever is coming back from wzzip.exe and formats into a "box" in the SAS log:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;2 The SAS System                                                                                 11:14 Tuesday, March 3, 2020
       +-----------------------------------------------------------------------------------------------------------------+
       | Start Zip at 2020-03-03 11:01:40.25.                                                                            |
       | WinZip(R) Command Line Support Add-On Version 4.0 64-bit (Build 10562)                                          |
       | Copyright (c) 1991-2013 WinZip International LLC - All Rights Reserved                                          |
       |                                                                                                                 |
       | Adding plans.sas7bdat                                                                                           |
       | Total bytes=4653056, Compressed=381416 -&amp;gt; 92 percent savings.                                                   |
       |                                                                                                                 |
       | Copying Zip file "I:\Commercial\monthly_data\Cornerstone\archive\Stg\Plans_Archive_2020-03-03_1113.zip".        |
       |                                                                                                                 |
       | End Zip at 2020-03-03 11:14:20.15.                                                                              |
       | Return code from zipping Plans.sas7bdat = 0.                                                                    |
       +-----------------------------------------------------------------------------------------------------------------+&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I can run the X command and create an actual physical text file with the output from wzzip.exe and then use the same DATA step to read in that physical text file, but then my "Start Zip" message is wildly inaccurate, and I suspect my check of SYSRC may not work since the data step starts after wzzip.exe is completely finished.&amp;nbsp; Having the "Start Zip" message isn't essential, but I'd like to be able to catch any issues that SYSRC might reveal.&amp;nbsp; We're assuming we have a reliable backup and are going to start updating files after this, so we really want to know if something goes wrong.&amp;nbsp; I may be being a little paranoid here.&amp;nbsp; In the data step I am checking for the text "Total bytes=" which appears to be a pretty reliable indicator that the zip has worked correctly.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jim&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 20:52:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629274#M186061</guid>
      <dc:creator>jimbarbour</dc:creator>
      <dc:date>2020-03-03T20:52:24Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629275#M186062</link>
      <description>&lt;P&gt;If worst comes to worst, don't use infile.&lt;/P&gt;
&lt;P&gt;Include a redirect-to-file in the command, use call system(), and read the file in&amp;nbsp; a subsequent step.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;A small hassle for no good reason though.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It looks like a bug to me.&lt;/P&gt;
&lt;P&gt;I'd write a small program that&amp;nbsp;creates dummy data and zips it, and then send the whole thing to tech support so they can replicate the problem.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 20:52:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629275#M186062</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2020-03-03T20:52:42Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629282#M186064</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/16961"&gt;@ChrisNZ&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Good suggestion.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Indeed, redirecting to a physical file is my workaround for now.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;*			FILENAME	WinOpSys	PIPE		"&amp;amp;ZipPgmPath. -a ""&amp;amp;Zip_File."" ""&amp;amp;Full_File.""";

			%cd(&amp;amp;Zip_Path);
			X	"del WinZip_Messages_Temp.txt &amp;amp; &amp;amp;ZipPgmPath. -a ""&amp;amp;Zip_File."" ""&amp;amp;Full_File.""	&amp;gt;	WinZip_Messages_Temp.txt";
			FILENAME	WinOpSys	"WinZip_Messages_Temp.txt";

&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;I commented out my original FILENAME with the embedded PIPE command and replaced it with:&lt;/P&gt;
&lt;P&gt;1.&amp;nbsp; A call to my change directory macro (%cd) that sets the SAS working directory to the same directory as will hold the Zip Archive.&lt;/P&gt;
&lt;P&gt;2.&amp;nbsp; A stand alone X command with a redirect to a physical text file.&amp;nbsp; Note that except for the redirect related code, the X command is unchanged from the original PIPE version.&lt;/P&gt;
&lt;P&gt;3.&amp;nbsp; A FILENAME statement with the same name as the original filename.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I then use the same DATA step as before except that I comment out the write of the "Start Zip" to the log since it is completely inaccurate with this set up.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My fear in this context is that I'm really not going to catch errors with my SYMGET('SYSRC'), but hopefully my verifying the presence of "Total bytes=" in the STDOUT is sufficient -- but I'm not really sure.&amp;nbsp; I have seen wzzip.exe have the occasional error, but I can't reproduce such errors on demand to see if my logic as currently structured will really detect anything.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jim&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 21:07:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629282#M186064</guid>
      <dc:creator>jimbarbour</dc:creator>
      <dc:date>2020-03-03T21:07:06Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629288#M186066</link>
      <description>&lt;P&gt;Just an observation (probably unrelated):&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I would put the quotes around the whole path. I haven't seen the syntax you use before.&lt;/P&gt;
&lt;P&gt;Also because there are two quotes, you don't need %str.&lt;/P&gt;
&lt;PRE class=" language-sas"&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token macroname"&gt;%let &lt;/SPAN&gt;ZipPgmPath	= "E:&lt;SPAN class="token punctuation"&gt;\&lt;/SPAN&gt;Program Files&lt;SPAN class="token punctuation"&gt;\&lt;/SPAN&gt;WinZip&lt;SPAN class="token punctuation"&gt;\&lt;/SPAN&gt;wzzip&lt;SPAN class="token punctuation"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token number"&gt;ex&lt;/SPAN&gt;e"&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Also, what happens if you use the data step example I provided?&lt;/P&gt;
&lt;P&gt;Just trying to isolate the root cause here. Is it the INFILE's inner workings or is it your data step's logic, even though it simple enough.&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 21:15:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629288#M186066</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2020-03-03T21:15:55Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629291#M186069</link>
      <description>&lt;P&gt;1. Unsure if call system() sets&amp;nbsp;&lt;SPAN&gt;SYSRC. Maybe worth a try(sorry can't test atm)?&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;2. You could add&amp;nbsp; &amp;nbsp;2&amp;gt;&amp;amp;1&amp;nbsp; at the end of the command&amp;nbsp; to catch&amp;nbsp;STDERR&lt;/SPAN&gt;&lt;/P&gt;
&lt;PRE class=" language-sas"&gt;&lt;CODE class="  language-sas"&gt;X &lt;SPAN class="token string"&gt;"del WinZip_Messages_Temp.txt &amp;amp; &amp;amp;ZipPgmPath. -a ""&amp;amp;Zip_File."" ""&amp;amp;Full_File.""&lt;/SPAN&gt; &lt;SPAN class="token string"&gt;&amp;gt; WinZip_Messages_Temp.txt 2&amp;gt;&amp;amp;1"&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;
			&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;3. &lt;EM&gt;My fear in this context is that I'm really not going to catch errors&amp;nbsp;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;- To really ensure all the zipping worked, you could open the zip file to validate it.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;- Note that unless you have a file system that addresses bitrot, your zip file is never perfectly safe.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; btrfs and ZFS are the only two such file systems afaik.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 03 Mar 2020 21:27:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629291#M186069</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2020-03-03T21:27:59Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629316#M186084</link>
      <description>&lt;P&gt;I would eliminate all of that complexity. It will let you test more easily.&amp;nbsp; It will also make your program easier to use.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Don't put the quotes into your macro variables, add them when you need them.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Instead of using CD just specify the fully qualified name of the ZIP file.&lt;/P&gt;
&lt;P&gt;Instead of trying to re-direct the messages to a text file just let them come to your SAS program.&lt;/P&gt;
&lt;P&gt;Try setting the TEMP environment variable to point to a place where you know there is enough space.&amp;nbsp; Perhaps the same place as you are writing the files.&amp;nbsp; I could not find real documentation on-line but this screen shot does show both TEMP and TMP environment variables.&amp;nbsp; &lt;A href="https://support.winzip.com/hc/en-us/articles/115011955108-The-PATH-environment-variable" target="_blank" rel="noopener"&gt;https://support.winzip.com/hc/en-us/articles/115011955108-The-PATH-environment-variable&lt;/A&gt;&amp;nbsp;You might try setting both.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%let zippgmpath = e:\program files\winzip\wzzip.exe;
%let free_space = d:\my_big_disk\temp ;
%let zip_path = c:\my_big_disk\archives;
%let zipfile = archive_2020_03_03.zip;
%let full_file = "c:\my_other_file\*.sas7bdat" ;

data _null_;
  infile %sysfunc(quote(
set TEMP=&amp;amp;free_space
; "&amp;amp;zippgmpath" -a "&amp;amp;zip_path\&amp;amp;zipfile" &amp;amp;full_file 
)) pipe ;
  input;
  put _infile_;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 03 Mar 2020 22:45:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629316#M186084</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2020-03-03T22:45:45Z</dc:date>
    </item>
    <item>
      <title>Re: Filename Pipe X Command -- Limitations?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629338#M186094</link>
      <description>&lt;P&gt;A few more data points:&lt;/P&gt;
&lt;P&gt;1.&amp;nbsp; I can definitely see intermediate zip archive work files.&amp;nbsp; See directory excerpt, below.&amp;nbsp; Notice that both of the intermediate zip archive work files shown froze at the same point, 3,448,766,542 bytes.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;03/03/2020  06:11 PM     &lt;STRONG&gt;3,448,766,542&lt;/STRONG&gt; _Za47800
03/03/2020  06:45 PM     &lt;STRONG&gt;3,448,766,542&lt;/STRONG&gt; _Za75784
03/03/2020  05:41 PM     1,211,498,412 ProvAddresses_Archive_2020-03-03_1714.zip
03/03/2020  05:50 PM     3,283,109,761 ProvAddresses_Archive_2020-03-03_1742.zip
03/03/2020  06:21 PM     2,449,062,651 Rx_Archive_2020-03-03_1759.zip&lt;/PRE&gt;
&lt;P&gt;2.&amp;nbsp; Here is a second directory excerpt.&amp;nbsp; I can zip with an X command embedded filename pipe (&lt;FONT face="courier new,courier"&gt;FILENAME WinOpSys PIPE "&amp;amp;ZipPgmPath. -a ""&amp;amp;Zip_File."" ""&amp;amp;Full_File.""";&lt;/FONT&gt;) files up to&amp;nbsp; 13.9 Gb, but any of the files larger than that freeze.&amp;nbsp; I said 8 to 10 Gb yesterday.&amp;nbsp; I was incorrect.&amp;nbsp; I can go up to about 14 Gb based on additional testing.&lt;/P&gt;
&lt;PRE&gt;02/21/2020  03:12 AM    22,343,712,768 claims_allproviders.sas7bdat
02/20/2020  10:43 PM    19,576,586,240 rx.sas7bdat
02/21/2020  03:12 AM    16,598,983,680 claims_allproviders.sas7bndx
02/20/2020  10:43 PM    &lt;STRONG&gt;13,850,731,520&lt;/STRONG&gt; rx.sas7bndx
02/20/2020  09:22 PM    10,682,236,928 provaddresses.sas7bdat
02/20/2020  07:43 PM     7,105,545,216 providers_all_npitin.sas7bndx
02/20/2020  09:22 PM     6,156,108,800 provaddresses.sas7bndx&lt;/PRE&gt;
&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/159"&gt;@Tom&lt;/a&gt;&amp;nbsp;, I like that PIPE embedded within a DATA step.&amp;nbsp; I haven't used that before.&amp;nbsp; I suspect a PIPE used in that context will be subject to the same constraint (about 14 Gb apparently) as having a PIPE in a conventional Filename, but I'd love to be wrong.&amp;nbsp; I will try it and see.&amp;nbsp; Stay tuned...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/16961"&gt;@ChrisNZ&lt;/a&gt;&amp;nbsp;, not to play favorites, but your code is a bit more different that what I have in place, so I will try your suggestion after Tom's.&amp;nbsp; Thank you very much for the suggestion; it may well have a good deal of merit inasmuch as it is quite different than my original approach.&amp;nbsp; And, yes, I could open the archives and see if a) the file is present and b) the file is readable, but this is part of an automated process that will archive a couple hundred files at 0030.&amp;nbsp; I'm really hoping not to have to do a manual QC here.&amp;nbsp; &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Jim&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 04 Mar 2020 03:45:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Filename-Pipe-X-Command-Limitations/m-p/629338#M186094</guid>
      <dc:creator>jimbarbour</dc:creator>
      <dc:date>2020-03-04T03:45:15Z</dc:date>
    </item>
  </channel>
</rss>

