デフォルトでは、AlpineのAPKをインタラクティブに設定できますか?

デフォルトでは、AlpineのAPKをインタラクティブに設定できますか?

-i私はデフォルトの非対話型モードではなく、Alpineのapkを実行するときにフラグを追加してアクセスできるインタラクティブモードを好みます。しかし、例を書き続けるのは# apk add -i非常に退屈です# apk add。インタラクティブモードをAlpine apkのデフォルト動作モードにする方法はありますか?

答え1

これソースコードにはapkこの機能がありますこれは面白いかもしれません。

static void setup_automatic_flags(void)
{
    [...]
    if (!(apk_flags & APK_SIMULATE) &&
        access("/etc/apk/interactive", F_OK) == 0)
        apk_flags |= APK_INTERACTIVE;
}

APK_INTERACTIVEオプションによって有効にされるフラグです-i

#define GLOBAL_OPTIONS(OPT) \
    ...
    OPT(OPT_GLOBAL_interactive,     APK_OPT_SH("i") "interactive") \
    ...

そして:

static int option_parse_global(void *ctx, struct apk_db_options *dbopts, int opt, const char *optarg)
{
...
    case OPT_GLOBAL_interactive:
        apk_flags |= APK_INTERACTIVE;
        break;

これは、ファイルが存在する場合、このオプションの動作が/etc/apk/interactive自動的に有効になるという意味だと思います。-iしかし、マンページにはこれに関する言及がありません。


この内容が追加されました。アプリケーション2.3:

apk: /etc/apk/interactive tty セッションの対話モードを有効にします。

端末でapkを実行するときに追加の質問をしたい人がいる場合。このファイルは、誤って initramfs ブートローダで対話型モードを有効にしないように、--root ではなく実際のルートディレクトリからインポートされます。

関連情報