I want to do something like this :
But I am not sure how to paste system clipboard in the shell command there.
Thank you for any help.
I want to do something like this :
But I am not sure how to paste system clipboard in the shell command there.
Thank you for any help.
I tried this :
cd ~/play/ git clone $KMVAR_[%CurrentClipboard%]
But that doesn’t work either.
You can't use KM token for Clipboard in Shell Scripts.
See pbcopy & pbpaste: Manipulating the Clipboard from the Command Line
Here's an example from @peternlewis:
In this case, you probably just want to first put the clipboard into a variable and then use the variable in the script:
Set Variable “Clip” to Text %CurrentClipboard%
Execute Script: git clone “$KMVAR_Clip”
Peter, I'm a real novice bash user. Why is it better to do that rather than use pbpaste
directly in the bash script?
Wrote a small article about how I use this macro.
No particular reason, just less script and more actions. I’m not much of a bash scripter, so @nikivi’s a=$(pbpaste)
is new to me, but that is a nice little trick.
How can I modify this macro :
clone to play.kmmacros (25.2 KB)
So that the notification only plays when the git clone actually completes.
Thank you for any help.
I don't know, maybe change to "synchronously" ?
There is no option for that :
then just try “ignore results”.
I think that it executes synchronously by default with the other options.
To easily pass in a variable to a shell script, I figured out that you can use the With input from
feature by choosing the Variable
option, and then typing in your shell script as:
xargs <your script that expects a variable at the end>
For example, if your variable is called text
, your shell script to echo the value of text would be:
<First set "With input from" "Variable" to "text">
xargs echo
Hey Daks,
Welcome to the forum!
This thread was misnamed, and I've changed it to reflect the use of the Clipboard.
Handling variables is well understood and documented:
pbpaste
is no doubt the most efficient method to use for this particular task.
xargs
is potentially dangerous for those who are not familiar with it.
Here's a method that is more straightforward:
Use the Clipboard in a Shell Script v1.00.kmmacros (5.4 KB)
This method also works when using a variable for the input value.
And of course you can directly read Keyboard Maestro variables using the form $KMVAR_VariableName
Note that you cannot write Keyboard Maestro variables from the shell.
-Chris