シェルに大量のコードを貼り付けましたが、コマンドを実行する前に先頭の%
を削除するのを忘れていました。何もしなかったようです。なぜこれは私のシェル(zsh)で何もしないのですか?
> % echo foo
bashでは、次のようになります
> % echo foo
bash: fg: %: no such job
コマンドを実行しても副作用がないことを確認したいだけです。
%
は、zshの「ジョブ制御とプロセス制御」機能の一部として使用される「ジョブID」を指します。ユーザーガイドから引用するには:
'fg' is the default operation on jobs referred to with the '%' notation,
so just typing '%1' with no command name would have worked, too.
例:
$> man zshall &
[1] + 31392 suspended (tty output) man zshall
$> jobs
[1] + suspended (tty output) man zshall
$> %
<manpage-opens-for-zshall>
詳細については、こちらをご覧ください: http://zsh.sourceforge.net/Guide/zshguide03.html#l39
realの質問に答えるには:zshがそこに警告を表示しない場合(「fg:現在のジョブがありません」など)、そこにIS /は仕事でした。例:
$> sleep 60 &
$> % echo foo
[1] + 411 running sleep 60
fg: job not found: echo
%
バックグラウンドプロセスを取り戻し、実行します。 60秒後、次の「jobid」が見つかりませんでした。
したがって、あなたが経験した行動は少し奇妙です。完全なzshrcがないと、何が起こっているのか正確に判断するのは困難です。 '%'文字がコメントを開始していることをzshに伝えたようです。 histchars
パラメーターの3番目の値を確認します。
$> echo $histchars