ソースコードの一部のみクリップボードにコピーし、別のエディタなどで利用したい時に使えそうです。
こう書いてみた
$ cat sample.swift | sed -n '3,10p' | pbcopy
短くすみました。sedのnオプションは指示した行のみ標準出力に書き出す時に使います。ここでは3行目から10行目までを書き出す(printする)ように指定しています。pbcopyはクリップボードにコピーするコマンドです。
簡単に説明してみる
元のファイルがsample.swiftになります。Swiftでstructを使った簡単なサンプルです。
sample.swift
#!/usr/bin/swift
struct Languages {
let lang1: String
let lang2: String
func favoriteLanguages() -> String {
return "1: \(lang1)\n2: \(lang2)\n"
}
}
let lang = Languages(lang1: "Swift", lang2: "Python")
print(lang.favoriteLanguages())
ターミナルで次のように打ち込みます。上のファイルの構造体を定義する部分(3行目から10行目)のみ切り取って、クリップボードにコピーします。
$ cat sample.swift | sed -n '3,10p' | pbcopy
別のエディタに貼り付けた結果はこのようになります。
struct Languages {
let lang1: String
let lang2: String
func favoriteLanguages() -> String {
return "1: \(lang1)\n2: \(lang2)\n"
}
}
反省
ファイルの一部を切り取りクリップボードにコピーする方法を、簡単なワンライナーで実現することができました。ちなみにpbpaste
すればペーストできます。クリップボードにコピーされた内容を確認するのに使えます。