猫>/パス/ターゲット/ファイル<

猫>/パス/ターゲット/ファイル<

時には物を使っcat >/etc/configfile <<EOFて内容を貼り付けてEOFからファイルにフラッシュするのが好きです。 1〜2行で大丈夫ですが、行が増えると、一部の内容が失われ、改行が追加されるなどの問題が発生します。patch <<EOF合計2000文字未満の簡単なパッチでも使用しても同じだ。

私の端末(urxvt)が何か間違っているようです。貼り付けは非常に高速ですが、欠落している内容があります。 cygwinのminttyを使用すると、非常に遅いですが、1行もスキップしません。また、Vimと入力してそこに貼り付けても何も失うことはありません。シェルは重要ではなく、zsh、bash、ashで発生します。

ベストアンサー1

説明した動作を再現することはできません。ターミナルエミュレータには貼り付けバッファサイズに制限があるかもしれませんが、重複した改行(存在する場合)はバグのように聞こえます。

ケーシング処理を検討しますか?中ここのドキュメント区切り<<EOF文字$は、`シェル内の変数置換またはコマンド置換の開始として解釈されます。たとえば、選択に次のものが含まれている場合

value=$PATH
more=$stuff stuff
hello=`ls`

EOF次に、次の内容を含むファイルに貼り付けます。

value=/usr/local/bin:/usr/bin:/bin
more= stuff
hello=hello.txt
world.txt

cat <<'EOF'このような置換を避けるには、ここのドキュメントのマークアップ(または他のバリエーション)をcat <<\EOF参照して、ここのドキュメントの内容を文字通り解釈するようにシェルに指示します。cat <<"EOF"

希望の選択項目を貼り付けたことを確認してください。X11にはさまざまなオプションがあります。;選択時に自動的にコピーする以前のX11アプリケーションはPRIMARY選択を使用し、別のコピーコマンドを使用する最新のX11アプリケーションはCLIPBOARD選択を使用します。

問題に対する解決策は、貼り付けることではなく、次のようなものを使用することです。クリップまたはシェル選択内容をファイルにコピーします。主なオプションの場合:

xclip -o >/etc/configfile
xclip -o | patch
xsel >/etc/configfile
xsel | patch

xclip -selection clipboardクリップボードを選択するには、またはに電話してくださいxsel -b

おすすめ記事