Bashからパイプされたテキストからキャリッジリターンを削除するには?

Bashからパイプされたテキストからキャリッジリターンを削除するには?

このコマンドを使用して、私が入力した最後のコマンドを取得します。

history | cut -c 8- | tail -n 2 | head -n 1

Bashでは行番号を削除してうまくいきますが、問題があります(コマンドだけが欲しいので面倒です)。これをxselクリップボードマネージャにパイプします。

また、末尾の改行/キャリッジリターンをキャプチャします。

一部のシェルでは、次のものが利用できることがわかります。

echo "text \c"

私はこれをこれにどのように組み込むかわかりませんbash

即座に入力できる最も簡単なソリューションのためのボーナスポイント :)

ベストアンサー1

組み込みのbashを使用して履歴の最後のコマンドを取得し、!!それを使用してecho -n最後に改行せずにそのコマンドを印刷できます。

echo -n !!

この!!パラメータは実際のコマンド文字列に拡張され、-n出力に改行文字が含まれないようにします。

おすすめ記事