dc3dd、なぜタブの完成が機能しないのですか?

dc3dd、なぜタブの完成が機能しないのですか?

スラックウェア15から。

ddを使って

dd if=/home/myuser/my..TABTabキーを押してディレクトリパスを完成させます。

私はdc3ddを使用します

dc3dd if=/home/myuser/my..TABしかし、何も起こりませんでした。

なぜ?

rlwrapを試しましたが、何も変わりませんでした

complete -p dd

説明する

bash: complete: dd: no completion specification

そして

complete -p dc3dd

bash: complete: dc3dd: no completion specification

答え1

シェルはコマンドラインオプションの構文を知る必要があります。これがまさにおなじみの快適さを提供するために多くのオートコンプリートスクリプトが提供される理由です。

あなたが使用しているシェルがそれを知らないようですdc3dd(私も同じです)、後でファイル名を完成できることを知りませんif=ddパラメータの完了に使用されるスクリプトを変更したバージョンである自己完結ルーチンを作成できます。

答え2

たぶん1つの方法は修正して最後に/usr/share/bash-completion/completions/dd置き換えることです。complete -F _dd ddcomplete -F _dd dd dc3dd

関連情報