Leo
Leo

Reputation: 1168

How to unzip a folder passing a variable?

I am trying to unzip a folder by passing it a variable in Google-colab. However when I do it, it doesn't show up in my folders.

If I do it by passing it directly the name, like in this answer here: Extract Google Drive zip from Google colab notebook

!unzip TASI.zip

I get this output:

rchive:  TASI.zip
  inflating: TASI/Output [11-13(1) _good_; 18_06_2019 15_58_09].csv  
  inflating: TASI/Output [11-15(1) _good_; 18_06_2019 15_51_26].csv  
  inflating: TASI/Output [11-46(1) _good_; 18_06_2019 15_41_08].csv  
  inflating: TASI/Output [11-47(1) _good_; 18_06_2019 15_36_31].csv  
  inflating: TASI/Output [3-14(1) _good_; 18_06_2019 14_06_52].csv  
  inflating: TASI/Output [3-18(1) _good_; 18_06_2019 13_55_35].csv  
  inflating: TASI/Output [4-31(1) _bad_; 18_06_2019 14_51_19].csv  

And the folder appears in my colab files.

If I do it by passing it the variable:

file_folder="TASI.zip"
!unzip -c "$file_folder" 

In the output it shows me the content of every file. And the folder does not appear in the colab files. Output:

Archive:  TASI.zip
  inflating: TASI/Output [11-13(1) _good_; 18_06_2019 15_58_09].csv  

SetupTitle, Output
PrimitiveTest, I/V Sweep
TestParameter, Context.MainFrame, 4155C
TestParameter, Channel.UnitType, SMU, SMU, SMU
TestParameter, Channel.Unit, SMU3:MP, SMU4:MP, SMU1:MP
TestParameter, Channel.IName, ID, IS, IG
TestParameter, Channel.VName, VD, VS, VG
TestParameter, Channel.Mode, V, COMMON, V
TestParameter, Channel.Func, VAR1, CONST, VAR2....

How do I unzip the folder in colab passing it a variable?

Upvotes: 4

Views: 3116

Answers (1)

Chris Doyle
Chris Doyle

Reputation: 11992

The -c flag to unzip is defined as extract files to stdout/screen (''CRT''). the two commands you are running are not the same, in the command where you specifically provide the file name you dont use the -c option so unzip extracts to the filesystem. In the command where you give a variable you use the -c flag telling unzip just to extract the files to the screen.

Try unzip with the variable but without the -c flag.

file_folder="TASI.zip"
!unzip "$file_folder" 

Upvotes: 4

Related Questions