GNU/Linux >> Linux の 問題 >  >> Linux

エコー文字列 | xclip -selection clipboard 、「文字列」をコピーしますが、新しい行も追加します。これを修正するには?

echo -n "string" | xclip -selection clipboard

もう少し詳しく説明するべきだったのかもしれません。 echo のデフォルト 文字列と改行を出力することです。 -n 後者を抑制します。


より一般的な解決策は、入力ソースに関係なく新しい行を無視することです。たとえば、一般的な使用例は、現在のディレクトリのパスをクリップボードにコピーすることです。コマンド

pwd | xclip -selection clipboard

改行文字をコピーしますが、これは多くの場合、私たちが望んでいるものではありません。解決策 は次のとおりです:

pwd | xargs echo -n | xclip -selection clipboard

より便利にするためにエイリアスを作成できます:

alias xclip='xargs echo -n | xclip -selection clipboard'

そして今から使う:

pwd | xclip # copied without new line
echo "foo" | xclip # copied without new line

xclip のバージョン 0.13 以降、オプション r を使用して内側の改行を保持する一般的な方法があります。 または rmlastnl .

したがって、次のようになります。

pwd | xclip -r # copied without new line
echo "foo" | xclip -r # copied without new line
ps | xclip -r # copied without the last new line!

Linux
  1. Bashシェルスクリプトで改行をエコーする方法

  2. Vi / Vim Editor エラーの修正方法 — E319:このバージョンではコマンドを使用できません

  3. 行末に行番号とヒット数を表示するようにgrep出力をフォーマットするにはどうすればよいですか?

  1. Linux シェルでは、複数行の文字列の各行をどのように処理できますか?

  2. ファイルの各行の先頭に文字列を追加するにはどうすればよいですか?

  3. シェル文字列内の単語のリストを逆にする方法は?

  1. bashで文字列から最後の数字を取得するにはどうすればよいですか?

  2. bash の改行でテキストをエコーする

  3. ファイルの内容を再帰的に表示するには?