macOS, how to write a script to replace space to "_" in shortcut?
时间: 2024-10-18 20:15:04 浏览: 4
To write a script on macOS that replaces spaces with underscores in a keyboard shortcut (also known as "service," which is similar to Windows shortcuts), you can use the `sed` command for text processing within a shell script. Here's a step-by-step guide:
1. Open a text editor (e.g., TextEdit or any code editor like Sublime Text, Visual Studio Code).
2. Create a new file and save it with a `.scpt` extension, for example, `replace_spaces.scpt`. This convention signals that it's an AppleScript file.
Here's a simple AppleScript example that demonstrates how to do this:
```applescript
tell application "System Events"
set shortcutName to text returned of (display dialog "Enter the name of your keyboard shortcut:")
set shortcutString to (POSIX path of (get current location as alias)) & "/" & shortcutName & ".快捷设定.plist"
set modifiedShortcut to ¬
do shell script "sed -i '' 's/ /_/g' " & shortcutString
if error number of modifiedShortcut is not 0 then
display alert "Error" message "Could not modify shortcut."
else
display alert "Success" message "Spaces replaced with underscores in the shortcut."
end if
end tell
```
Save the script, and then open Terminal (found in Applications > Utilities) to run it. To execute the script, type:
```bash
osascript replace_spaces.scpt
```
You'll be prompted to enter the name of your keyboard shortcut, and the script will search for the corresponding `.快捷设定.plist` file and replace spaces with underscores.
**
阅读全文