時には、クリップボードにファイルや文字列のリストがあり、引数リストとして bash シェルに貼り付けたい場合があります。
サンプルファイルのリスト(例のみ):
createsnapshot.sh
directorylisting.sh
fetchfile.sh
私が望むもの:
md5sum createsnapshot.sh directorylisting.sh fetchfile.sh
現在、次のハッキングコマンドラインを入力します(ファイル名はクリップボードに貼り付けられており、リストには数十行を含めることができます)。
md5sum $(echo $(echo "
createsnapshot.sh
directorylisting.sh
fetchfile.sh
"))
これにはいくつかの欠点があります。
- 複雑
- 良く見えない
- スペースを含む行はサポートされていません。
他にどのようなオプションがありますか?md5sum "
この場合、複数行の文字列を持つパラメータのみを取得するため、機能しません。ここの記事に似ています。
必ずしもそうではありませんmd5sum
。tar
または、git add
どちらでもかまいませんdu -hsc
。私はこれらのファイルのmd5チェックサムを取得する方法を要求するだけではありません。このようなことが1日2〜5回程度起こります。
ベストアンサー1
バックティック呼び出しなどの変数やダミー変数を引用しない場合(例$(xclip -selection c -o)
:この場合(クリップボードの内容を最初に確認してください))、必要なものは次のとおりです。$IFS
\t
\n
md5sum `xclip -selection c -o`
メモ:
必要なコマンドの周りに短い名前のラッパーを置くことは非常に便利ですxclip
。
私は使う
#!/bin/sh
#filename: cb
if [ -n "$DISPLAY" ]; then
[ -t 0 ] && exec /usr/bin/xclip -selection c -o 2>/dev/null
/usr/bin/xclip -selection c
else
[ -t 0 ] && exec cat "/dev/shm/$TTY_DASHED"
cat > /dev/shm/"$TTY_DASHED"
fi
これにより、コンテンツを入力してcb
クリップボードにアクセスしてsomething | cb
コンテンツを作成できます。
DISPLAY
(私が外にTTY_DASHED
いるなら.profile
export TTY_DASHED=$(tty |tr / - | tail -c+2)