デスクトップにファイルがあります。ファイル名はded.htmlです。ファイルをコピーするには、ファイルをクリックしてcmd + cを押します。
ターミナルを使用して同じことをどのように行うのでしょうか?
デスクトップにファイルがあります。ファイル名はded.htmlです。ファイルをコピーするには、ファイルをクリックしてcmd + cを押します。
ターミナルを使用して同じことをどのように行うのでしょうか?
回答:
質問を正しく理解している場合、あなたが求めているのはpbcopy
とpbpaste
です。
ターミナルを開き、以下を実行します。
$ cat ~/Desktop/ded.html | pbcopy
これで、そのファイルはクリップボードに入れられました。
別の場所に配置する、つまり貼り付けるには、次のようにします。
$ pbpaste > ~/Documents/ded.html
これで、〜/ Documentsにded.htmlのコピーがあるはずです。
cat ~/.emulator_console_auth_token | auth <read_content>
?
Lriの答えは正しい方向に向かっていますが、いくつかの欠点があります:Finder(StandardAdditions OSAXのthe clipboard
一部です)を使用する必要はなく、ハンドラーを与えることはコマンドラインから引数を渡すより信頼性の高い方法です(10.4以降)。これらの両方の変更を行うと、シェルにプログラムを入力するために必要な「エスケープ」が大幅に簡素化されます。run
これが私のバージョンです(シェル関数にラップされています。これを(たとえば)に入れて、シェル.bashrc
で使用可能にすることができます)。
file-to-clipboard() {
osascript \
-e 'on run args' \
-e 'set the clipboard to POSIX file (first item of args)' \
-e end \
"$@"
}
file-to-clipboard ~/Desktop/ded.html
このスクリプトでクリップボードに置かれたファイルをFinderに貼り付けて、そのファイルを別のフォルダーにコピーできます。
osascriptは、ハッシュバンインタープリターとしても使用できます(10.5以降)。これをファイルに入れます(例file-to-clipboard
)
#!/usr/bin/osascript
on run args
set the clipboard to POSIX file (first item of args)
end
ファイルを実行可能にします(chmod +x /path/to/where/ever/you/put/file-to-clipboard
)。次に、次のように実行します。
/path/to/where/ever/you/put/file-to-clipboard ~/Desktop/ded.html
PATH内のディレクトリに保存されている場合、「スクリプト」ファイルへのパスを省略できます。
set the clipboard to {one,two}
(ただし、別のAppleScriptプログラムはリストを正常に抽出できます)。StandardAdditionsは、コマンドは、単一の項目に限定することができるクリップボード。
コマンドラインを使用して何をしようとしているかを達成する方法はありません。Appleはテキストの基本的なコピーを可能にするツールpbcopy
とpbpaste
ツールを提供していますが、これらのツールを使用して目的のファイルをコピーすることはできません。
技術的な詳細をあまり説明しなくても、を使用してFinderでファイルを「コピー」すると⌘C、実際にファイル自体をコピーするのではなく、クリップボード上のファイルへの参照を作成し、ファイル参照としてマークします。貼り付けたときにアプリケーションがこの参照を受け取ると、アプリケーションは物事を整理し、貼り付けたものを把握し、最終的には適切と思われるファイルを操作する責任があります。本質的に、Finderでファイルをコピーすると、特定のクリップボードに特定の方法でファイルへのパスが保存され、貼り付けると、そのファイルパスが受信され、ファイルの内容を使用して新しいファイルを作成する古いファイル(ファイルをクリップボードにコピーして削除し、別の場所に貼り付けて、何が起こるかを確認します)。
このコピーと貼り付けという意味では、手元にあるツールでは必要なことを行うのに十分ではありません。boehjが示唆したように、古いファイルの内容を新しいファイルにコピーしようとすることができますが、これはテキストファイルに対してのみ有効です。取得したバイナリファイルは破損します(イメージでこれを試してください-破損します)。
従来のコマンドラインではこのように失敗しますが、AppleScriptでこれを実行したい場合は、コマンドラインからを使用して呼び出してosascript
ください。
pbcopy
し、pbpaste
.htmlのファイルで動作します、単なるテキストファイルであることを起こるので、それだけです。
pbcopy -help
、本番に値しないNSLog()
行が繰り返し表示され'pbcopy -help'
ます。それは私がチャイムすることが必要と感じた理由である、これを理解するために、プログラマことに役立ちます。
簡単なシェル/バッシュスクリプトを次に示します。あなたの.bashrc
ファイルにそれを貼り付けてください(または同様):
file-to-clipboard() {
if [ -z "$1" ]; then
echo "file path/name:"
read FILE
else
FILE="$1"
fi
pbcopy < "$FILE"
}
相対ファイルのサポート:
clip_img() {
osascript -e 'on run argv' \
-e 'set currentDir to do shell script "pwd"' \
-e 'set the clipboard to (read POSIX file (POSIX path of (currentDir as text & (first item of argv) )) as JPEG picture)' \
-e 'end run' "/$1"
# osascript -e 'clipboard info'
}
clip_img path-to-file
クリップボードに画像をコピーするために実行され、path-to-file
相対的な可能性があります。ファイルは、jpegまたはpngファイルです。
UNIX環境では、cat 'originfile'> 'destinationfile'を使用できます。
Windowsでoriginfile destinationfileをコピーします。