From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 2040 invoked from network); 7 Jan 2023 13:45:00 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 7 Jan 2023 13:45:00 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1673099100; b=oSLxxlPKzrkThepCJAU4scHKnf+8GcY26AC/Atc6uLV++oWzv1L/s/fJn/Z+jxUdqIdV9B+c// IPpbh4zrdUCVYS8kJzo5Gt/E+u5CwrXcs0GU266pJ56mISQz1OlZxpmkGNoHx4+9rNaPFbf2Zm touJrcup/JyWDizW+UirWgm93ojEL/JVaVxcGGdwfRFwzKX+lyNy6wQEv+WMwi/8RQTvXBQDeM ijmNhCgBlhA/duwZy50dd67yCBeHSXeSDeELJQPcg+q8a8PTp+f6cW74qqo0AoxBJ12paMo9HX HYronlAcGSQj0RiXnq0JbnFRB61efrg3iCK0b6KYdCn9xw==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-yb1-f173.google.com) smtp.remote-ip=209.85.219.173; dkim=pass header.d=gmail.com header.s=20210112 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1673099100; bh=+GuGKsPrFPwLxbt+OvEYmr2/LvDP95M+ygF16CCzAO8=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Type:Cc:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:DKIM-Signature:DKIM-Signature; b=pPSGFww6nTrvI0UPQgvteXLDdVoCNdbQ8C3WY1uqnt/wQO/+mj4UsTB64xi9LkpGalkhMR89A+ AWcqriX56GO4WkGD04yVlx0guSQExFXzDfGxG0kN6jcah2mXILfW6DrMvQR99mjbzj7Gro6Pbg 6LEWqISsz30AW1nr35AQYQOzldAwzyi4ALuOy2RYhiE4T/eAPmYpjVMkRenONdl22YciZ5IaOm W+yz783mkpt/0Ho1/YdXynYFlvuCJ5XPtzC0AqKeZBfaFDxVQlo6B6nb7kyry1m5Xfovwkuc7S ouCCNfDoD34y2QtVhSE0+Vb2Sc4gmvKN9cDTay7fs9VCxA==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Content-Type:Cc:To:Subject:Message-ID :Date:From:In-Reply-To:References:MIME-Version:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=6JEMdQAYB4YZAF6vkIgIXDyJnAF+VrEFL+kTG671Hzg=; b=Yh62Cna9D8yE+vLf3a6rkrGJPw bub1GDg8T5xQgqDH2Uaehsc1oQg1NdBOkbVs6OZEdcem4cw/PhxOaeXGKTiuBjhgqKjv+mAuiKrXo ANyPLBdi79zKUHIFKbpL8oC5vmCAZvwenO4Mm9x3LopQyWksvsoqkZS90wJV6uAoZ1wLu478YHVxd b7DTW2ddHnu37SzTOd8NESkZUMv76Ityi9DWKHgN0xAISySQfiRy7W6eiKd5hIswh2WM2cDgSjxAz De50R/ITrFPu8Qr7IxdLVqPRjKKq6Gs0A6GaG9HElTbvRXi7DERjusfHaJtH0lB+RPPQGvyyLFwh3 D6TpJG8g==; Received: by zero.zsh.org with local id 1pE9VL-0006q0-OQ; Sat, 07 Jan 2023 13:44:59 +0000 Authentication-Results: zsh.org; iprev=pass (mail-yb1-f173.google.com) smtp.remote-ip=209.85.219.173; dkim=pass header.d=gmail.com header.s=20210112 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none Received: from mail-yb1-f173.google.com ([209.85.219.173]:38781) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1pE9Um-0006Bd-Br; Sat, 07 Jan 2023 13:44:25 +0000 Received: by mail-yb1-f173.google.com with SMTP id p188so4601068yba.5 for ; Sat, 07 Jan 2023 05:44:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=6JEMdQAYB4YZAF6vkIgIXDyJnAF+VrEFL+kTG671Hzg=; b=KgbQD10IaLUQFwJR60VHjvxMINOBbfMaBZ6YcRp7XP8OgRhUiyZQGb3wP3muf7SyEY w9JjtqRpb6rzYs2Lsn3iAQEk0xu/QgW7yNk6B+zzhNfSRTARxEQE1dNBG2/rwwtq89no lZK13fzBmR3QCVOLfOOE3qDqkUj8/vccDHDJJv+Q134zH29YHs/98LGg6GnW/HDnyz8M ANxhs9FIM6pqCU2hzUHZxhetoQ4QfCOqnZLWK+yAe2xZVxCMFkP+QaidpYx4CnJRYZpg Xu17JdCmoZKF4/bCotjW3wi0T6lV7hSofxwrRRdzmJhJI+mrCMI29rm5heqhCw7vOYT/ AgrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=6JEMdQAYB4YZAF6vkIgIXDyJnAF+VrEFL+kTG671Hzg=; b=1oz4XfX3N3eNV6ePKs4M4n811Gt0+SqLTIClh3Jn8r+At6ZwK7470UfCYuu/wTrM2h lASfQ+qxmvv6FcdmvmsdEX0uNdwF9Xhzk7E5lxCBazfwglIQZ2g9ykZp3EQOc2vNAgHk U4g8x75MzmIPIMZXXvPoYjhT5+oywkyhqy1QxCmbm/OSjiIBwSKutE0FXtONTr80kKyc VNxI006NbL1b/YwK5tV048bDuI2AipHO7czWF9Z5juFk2ZZ2CDvPG0AUpEur1yqcfPVp SZHgjTxgC9GtqAFTfY7WvZMqOsQ1SjMNAWsM+zrxgIe9ck/QvofhVsIoy4tx+oIoFe6t KtCA== X-Gm-Message-State: AFqh2kq4qmCwUeImMygnNkje6E4uZSgltJlJG47+GbZXAi1Zm41dUare xoTd8s+a/pXLA48VoHTNlHmND8dVYnrdi0w/paM= X-Google-Smtp-Source: AMrXdXuFyx8OmHzxmSbyI2Lgnv0os8galecFSCcl1a3aEIQoIDcbGswFVB9vbd1CrvJK3/ldVykL8qKgql6AqIxgZFE= X-Received: by 2002:a05:6902:4ae:b0:6fa:e421:404b with SMTP id r14-20020a05690204ae00b006fae421404bmr6612527ybs.476.1673099063159; Sat, 07 Jan 2023 05:44:23 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Roman Perepelitsa Date: Sat, 7 Jan 2023 14:44:11 +0100 Message-ID: Subject: Re: read with redirected stdin To: Pier Paolo Grassi Cc: Zsh-Users List Content-Type: text/plain; charset="UTF-8" X-Seq: 28618 Archived-At: X-Loop: zsh-users@zsh.org Errors-To: zsh-users-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-users-request@zsh.org X-no-archive: yes List-Id: List-Help: , List-Subscribe: , List-Unsubscribe: , List-Post: List-Owner: List-Archive: On Sat, Jan 7, 2023 at 2:32 PM Pier Paolo Grassi wrote: > > Hello, I have a script that asks to create a target dir if it doesn't exist. > to that extend I inserted an > read -k1 > in the script. > To be able to ask the user for confirm even when the script stdin is connected to a pipe I did > read -k1 < /dev/tty Note that this redirect doesn't affect `read -k1`. It'll read from the terminal either way. You can do something like this in your script: if [[ -r $TTY ]]; then read -k1 else read -k1 -u0 fi There is a corner case when you log in as root and then su to a non-privileged user. $TTY won't be readable even though the process has a TTY. Since you are redirecting stdin anyway, this corner case shouldn't affect you. Roman.