「!」をエコーすると、文字列内で奇妙なことが起こります。
この質問にはすでに答えがあります。: ...
履歴拡張文字を上書きするには、次のコマンドを検討してください。ZSHを使用したシェルスクリプトの学習本): % set histchars='@^#' % ls *.txt file1.txt file2.txt % @@ 結果: zsh: command not found: @@ ただし、これは機能します(注意setは省略)。 % histchars='@^#' % ls *.txt file1.txt file2.txt % @@ 結果: ls *.txt file1.txt file2.txt ...
bashプロンプトに入力したとき !5 ...ちょうどわかります。 !5: command not found ...答えで。何が間違っているのかというアイデアはありますか?確認する必要がありますか? ...
git diffまず、特定のファイルを確認してからステージに追加するワークフローがあります。 git diff .. ^diff^add このコマンドにエイリアスを指定したいのですが、動作しません。 alias da="^diff^add" command not found: ^diff^add ...
前のコマンドラインで右矢印キーを使用して一度に1つのパラメータを入力できますか? $ mogrify -resize 50% file.jpg $ ここで右矢印を押すとが埋められmogrify、もう一度右矢印を押すまで塗りつぶす必要があります。mogrify -resizeもう一度押すmogrify -resize 50%とが続きます。 これまでのコマンドラインが前のコマンドラインと一致しない場合は、最後に一致したコマンドから入力する必要があります。 $ mogrify -resize 50% file.jpg $ echo hi $ mo mogrif...
私が見ているのは、あるセッション(pts)のコマンドライン履歴を別の開いているセッション(pts)で使用できないことです。 別のセッションですぐに使用できるように、セッション履歴を明示的にコミットすることは可能ですか? また、私が見ているのは、閉じたセッションの履歴が新しいセッションにのみ適用されることです。既存のセッションには適用されません。 閉じたセッションの履歴を既存のセッションに抽出できますか? bash上記の観察はケースにのみ適用されます。 同じユーザーに対して複数のセッションがあるときに記録(ログ/共有)がどのように機能するかを説明できま...
tcsh私は誰もが私にそれを使うことから別のものに変えなければならないと言うことを知っていますが、bashヒステリシスは強力な力なので、私はそうしません。ほとんどの場合、完全に十分だと思いましたが、tcshどうすればよいかわかりませんが、実行するのは簡単ですbash。履歴項目のある変数を別の変数にグローバルに置き換えます。たとえば、歴史が次のように話しているとします。 1 mv dog.tex cat.tex コマンドを実行したい。 mv dog.pdf cat.pdf それはbash簡単です: !1:gs/tex/pdf/ ところで、グローバル演算子...
履歴リストにコマンドe='echo a b c'とが含まれているとします$e。 $ebashの履歴拡張機能を使用してコマンドを参照するには? ...
履歴から呼び出すのではなく、履歴拡張コマンドを再作成する必要があります。 たとえば、次のコマンドで35を36、37、38 ...に変更する必要があります。 $ print -P '\033[35mThis is the same red as in your solarized palette\033[0m' $ !!:gs/35/36 今やるべきこと!!:gs/36/37 Upただし、鍵を使用するとき。表示されません$ !!:gs/35/36。見せるprint -P '\033[35mThis is the same red as in your sol...
bashは手動で二重引用符を入力します(https://www.gnu.org/software/bash/manual/html_node/Double-Quotes.html)状態: 有効にすると、「!」が二重引用符内に表示され、バックスラッシュでエスケープされない限り、履歴拡張が実行されます。前の「!」のバックスラッシュは削除されません。 なぜ特別なケースがありますか!?たとえば、aをエスケープすると、$出力にバックスラッシュが表示されません(例:echo "\$"->$とecho "\!"->比較\!)。 !二重引用符の中に...
編集する:@JdeBPのコメントに基づいて、対話型端末のコマンド履歴と通話履歴機能が異なる2つであることを理解しています。しかし、GNU readline履歴呼び出し関数が画面にどのように印刷されるかはまだ疑問に思っています。 私はbashコマンドが以前のコマンドをターミナルウィンドウに印刷するhistoryために使用されていないことに気づきましたstdout。別の問題(協会)今、私は正確にどのように動作するのだろうかと思います。 コマンドを入力してEnterキーを押すと、上矢印を使用して前のコマンドに移動できます。ただし、前のコマンドは経由で送信されま...
?、、^など一部のキャラクターは歴史展開で特別な意味を持っていますが、イベントで探すこと$ができますか?!string!?string[?] ヘルプには、これを行う方法は記載されていません。 `!STRING' Refer to the most recent command preceding the current position in the history list starting with STRING. 修正する 特殊文字を検索することは意味がありません!string。!?string[?]でうまく動作します。^...
からman bash: !# これまでに入力した完全なコマンドラインです。 からman zshall: !# これまでに入力された現在のコマンドラインを確認してください。行は、引用符付きの行の前の単語を含む完全なものと見なされます!#。 私が考えることができる唯一のことは: cd ..;!#!#!# ステップ8に上がる :)) ...