2019-03-08 18:17:28 +00:00
|
|
|
# sd
|
|
|
|
|
2020-07-21 21:50:14 +01:00
|
|
|
> Intuitive find & replace CLI.
|
2019-03-08 18:17:28 +00:00
|
|
|
|
|
|
|
- Trim some whitespace using regex:
|
|
|
|
|
|
|
|
`{{echo 'lorem ipsum 23 '}} | sd '\s+$' ''`
|
|
|
|
|
|
|
|
- Replace words using capture groups:
|
|
|
|
|
|
|
|
`{{echo 'cargo +nightly watch'}} | sd '(\w+)\s+\+(\w+)\s+(\w+)' 'cmd: $1, channel: $2, subcmd: $3'`
|
|
|
|
|
2020-07-21 21:50:14 +01:00
|
|
|
- Find and replace in a file printing the result to stdout:
|
2019-03-08 18:17:28 +00:00
|
|
|
|
2020-07-21 21:50:14 +01:00
|
|
|
`sd -p {{'window.fetch'}} {{'fetch'}} {{http.js}}`
|
2019-03-08 18:17:28 +00:00
|
|
|
|
2020-07-21 21:50:14 +01:00
|
|
|
- Find and replace across a project changing each file in place:
|
2019-03-08 18:17:28 +00:00
|
|
|
|
2020-07-21 21:50:14 +01:00
|
|
|
`sd {{'from "react"'}} {{'from "preact"'}} $(find . -type f)`
|