Browse Source

feat(encode64): add `encodefile64` function (#10813)

Co-authored-by: Jeremy Combs <jeremy.combs@convergetp.com>
Jeremy Combs 2 years ago
parent
commit
3eda3e5650
2 changed files with 29 additions and 4 deletions
  1. 19 4
      plugins/encode64/README.md
  2. 10 0
      plugins/encode64/encode64.plugin.zsh

+ 19 - 4
plugins/encode64/README.md

@@ -10,10 +10,11 @@ plugins=(... encode64)
 
 ## Functions and Aliases
 
-| Function   | Alias | Description                    |
-| ---------- | ----- | ------------------------------ |
-| `encode64` | `e64` | Encodes given data to base64   |
-| `decode64` | `d64` | Decodes given data from base64 |
+| Function       | Alias  | Description                            |
+| -------------- | ------ | -------------------------------------- |
+| `encode64`     | `e64`  | Encodes given data to base64           |
+| `encodefile64` | `ef64` | Encodes given file's content to base64 |
+| `decode64`     | `d64`  | Decodes given data from base64         |
 
 ## Usage and examples
 
@@ -37,6 +38,20 @@ plugins=(... encode64)
   b2gtbXktenNo==
   ```
 
+### Encoding a file
+
+Encode a file's contents to base64 and save output to text file.  
+**NOTE:** Takes provided file and saves encoded content as new file with `.txt` extension
+
+- From parameter
+
+  ```console
+  $ encodefile64 ohmyzsh.icn
+  ohmyzsh.icn's content encoded in base64 and saved as ohmyzsh.icn.txt
+  $ ef64 "oh-my-zsh"
+  ohmyzsh.icn's content encoded in base64 and saved as ohmyzsh.icn.txt
+  ```
+
 ### Decoding
 
 - From parameter

+ 10 - 0
plugins/encode64/encode64.plugin.zsh

@@ -6,6 +6,15 @@ encode64() {
     fi
 }
 
+encodefile64() {
+    if [[ $# -eq 0 ]]; then
+        echo "You must provide a filename"
+    else
+        base64 -i $1 -o $1.txt
+        echo "${1}'s content encoded in base64 and saved as ${1}.txt"
+    fi
+}
+
 decode64() {
     if [[ $# -eq 0 ]]; then
         cat | base64 --decode
@@ -14,4 +23,5 @@ decode64() {
     fi
 }
 alias e64=encode64
+alias ef64=encodefile64
 alias d64=decode64