diff --git a/README.md b/README.md index 6f5ab2a..4c09f22 100644 --- a/README.md +++ b/README.md @@ -21,9 +21,11 @@ format x bool.; %rainCloudPlot(sashelp.cars,DriveTrain,Invoice) %zipLibrary(sashelp,libOut=work) + +%bpPIPE(ls -la ~/) ``` and more. -SHA256 digest for the latest version of `BasePlus`: D8DBB7CC5952331FA59FEBBBDD15BC543FE3C89A8BA9150FE6AF5E412868EBE7 +SHA256 digest for the latest version of `BasePlus`: A6F1977DC4EC22A39DDC7BCE68CF562AF54351A3D385D488EC3067B5A7C0F3CB [**Documentation for BasePlus**](./baseplus.md "Documentation for BasePlus") diff --git a/baseplus.md b/baseplus.md index 2f2173a..b856736 100644 --- a/baseplus.md +++ b/baseplus.md @@ -49,14 +49,14 @@ * [`%LDsNm()` macro](#ldsnm-macro) * [`%LVarNm()` macro](#lvarnm-macro) * [`%LVarNmLab()` macro](#lvarnmlab-macro) - + * [`%bpPIPE()` macro](#bppipe-macro) * [License](#license) --- -# The BasePlus package [ver. 1.17.3] ############################################### +# The BasePlus package [ver. 1.18.4] ############################################### The **BasePlus** package implements useful functions and functionalities I miss in the BASE SAS. @@ -220,63 +220,69 @@ data MyNextDataset; run; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +**Example 12**: List, to the log, content of `home` directory. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas +%bpPIPE(ls -la ~/) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + --- Package contains: -1. macro deduplistc -2. macro deduplistp -3. macro deduplists -4. macro deduplistx -5. macro functionexists -6. macro getvars -7. macro ldsn -8. macro ldsnm -9. macro lvarnm -10. macro lvarnmlab -11. macro qdeduplistx -12. macro qgetvars -13. macro qzipevalf -14. macro raincloudplot -15. macro symdelglobal -16. macro unziplibrary -17. macro zipevalf -18. macro ziplibrary -19. format bool -20. format boolz -21. format ceil -22. format floor -23. format int -24. functions arrfill -25. functions arrfillc -26. functions arrmissfill -27. functions arrmissfillc -28. functions arrmisstoleft -29. functions arrmisstoleftc -30. functions arrmisstoright -31. functions arrmisstorightc -32. functions bracketsc -33. functions bracketsn -34. functions catxfc -35. functions catxfi -36. functions catxfj -37. functions catxfn -38. functions deldataset -39. functions semicolonc -40. functions semicolonn -41. format brackets -42. format semicolon -43. proto qsortincbyprocproto -44. functions frommissingtonumberbs -45. functions fromnumbertomissing -46. functions quicksort4notmiss -47. functions quicksorthash -48. functions quicksorthashsddv -49. functions quicksortlight +1. macro bppipe +2. macro deduplistc +3. macro deduplistp +4. macro deduplists +5. macro deduplistx +6. macro functionexists +7. macro getvars +8. macro ldsn +9. macro ldsnm +10. macro lvarnm +11. macro lvarnmlab +12. macro qdeduplistx +13. macro qgetvars +14. macro qzipevalf +15. macro raincloudplot +16. macro symdelglobal +17. macro unziplibrary +18. macro zipevalf +19. macro ziplibrary +20. format bool +21. format boolz +22. format ceil +23. format floor +24. format int +25. functions arrfill +26. functions arrfillc +27. functions arrmissfill +28. functions arrmissfillc +29. functions arrmisstoleft +30. functions arrmisstoleftc +31. functions arrmisstoright +32. functions arrmisstorightc +33. functions bracketsc +34. functions bracketsn +35. functions catxfc +36. functions catxfi +37. functions catxfj +38. functions catxfn +39. functions deldataset +40. functions semicolonc +41. functions semicolonn +42. format brackets +43. format semicolon +44. proto qsortincbyprocproto +45. functions frommissingtonumberbs +46. functions fromnumbertomissing +47. functions quicksort4notmiss +48. functions quicksorthash +49. functions quicksorthashsddv +50. functions quicksortlight -*SAS package generated by generatePackage, version 20221125* +*SAS package generated by generatePackage, version 20221215* The SHA256 hash digest for package BasePlus: -`D8DBB7CC5952331FA59FEBBBDD15BC543FE3C89A8BA9150FE6AF5E412868EBE7` +`A6F1977DC4EC22A39DDC7BCE68CF562AF54351A3D385D488EC3067B5A7C0F3CB` --- # Content description ############################################################################################ @@ -3934,6 +3940,42 @@ The basic syntax is the following, the `<...>` means optional parameters: --- +## >>> `%bpPIPE()` macro: <<< ####################### + +The bpPIPE() [Base Plus PIPE] macro executes OS command +and print to the log output of the execution. + +Under the hood it uses `_` filename reference to PIPE device. + +### SYNTAX: ################################################################### + +The basic syntax is the following, the `<...>` means optional parameters: +~~~~~~~~~~~~~~~~~~~~~~~sas +%bpPIPE( ) +~~~~~~~~~~~~~~~~~~~~~~~ + +**Arguments description**: + +* **NO Arguments** - Everything inside brackets is treated as an OS command. + +--- + +### EXAMPLES AND USECASES: #################################################### + +**EXAMPLE 1.** List, to the log, content of D and C drives: +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas + %bpPIPE(D: & dir & dir "C:\") +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + +**EXAMPLE 2.** List, to the log, content of `home` directory: +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas + %bpPIPE(ls -halt ~/) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +--- + + ## License #################################################################### Copyright (c) since 2020 Bartosz Jablonski diff --git a/baseplus.zip b/baseplus.zip index eb85b9d..1334c44 100644 Binary files a/baseplus.zip and b/baseplus.zip differ diff --git a/hist/1.18.4/baseplus.zip b/hist/1.18.4/baseplus.zip new file mode 100644 index 0000000..1334c44 Binary files /dev/null and b/hist/1.18.4/baseplus.zip differ