BookmarkSubscribeRSS Feed
☑ This topic is solved. Need further help from the community? Please sign in and ask a new question.
qc1
Fluorite | Level 6 qc1
Fluorite | Level 6
My code is:
options compressed=yes;
libname public "path/to/public";
x "gunzip path/to/public/sale_21.sas7bdat.gz";

proc append base=public.sale_21 data=public.new_21 force;
run;

x "gzip path/to/public/sale_21.sas7bdat";


At the beginning, there are two datasets under public folder: one compressed sale_21.sas7dbat.gz and one uncompressed new_21.sas7bdat

I want to uncompressed sale_21 add data from new_21 to the end of sale_21, and then gzip it back. The public folder should still have two datasets.

But after I run my program, it create another dataset, now my public folder has three files : one compressed sale_21.sas7bdat.gz and one uncompressed sale_21.sas7bdat and the original new_21.sasbdat. Why it created additional datasets? What should the codes be ??

Thanks SO much!! Any help would be greatly appreciated!
1 ACCEPTED SOLUTION

Accepted Solutions
Tom
Super User Tom
Super User

Are you asking how the commands gzip and gunzip work?

Shouldn't that be asked somewhere else?

 

If you want to see what messages the operating system is generating when you run those commands I recommend NOT using the X command.  Instead use a PIPE so your can read the responses and at least write them to the SAS log.

data _null_;
  infile
   "gunzip path/to/public/sale_21.sas7bdat.gz &2>1"
    pipe
  ;
  input;
  put _infile_;
run;

If that does not work then just try opening a terminal window to the SAS server and running the commands directly in the terminal window and observe the behavior.  Perhaps your system has defined an alias for gzip that causes it to not replace the existing file but leave it behind.

View solution in original post

1 REPLY 1
Tom
Super User Tom
Super User

Are you asking how the commands gzip and gunzip work?

Shouldn't that be asked somewhere else?

 

If you want to see what messages the operating system is generating when you run those commands I recommend NOT using the X command.  Instead use a PIPE so your can read the responses and at least write them to the SAS log.

data _null_;
  infile
   "gunzip path/to/public/sale_21.sas7bdat.gz &2>1"
    pipe
  ;
  input;
  put _infile_;
run;

If that does not work then just try opening a terminal window to the SAS server and running the commands directly in the terminal window and observe the behavior.  Perhaps your system has defined an alias for gzip that causes it to not replace the existing file but leave it behind.

SAS Innovate 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 1203 views
  • 0 likes
  • 2 in conversation