Package: tcsh
Version: 6.21.00-1.1
Severity: normal
Dear Maintainer,
First bug report.
I suspect there's a bug with filename substitution when brackets name[X-Y] are
used.
The expected behaviour is:
nameX, ....., nameY
I'm seeing:
name0, ...., nameY
To reproduce the bug:
~>tcsh -fc "ls -dc /etc/rc[2-5].d"
/etc/rc0.d /etc/rc1.d /etc/rc2.d /etc/rc3.d /etc/rc4.d /etc/rc5.d
^^^^^^^^^^^^^^^^^^^^^^^
incorrect
This is the correct behavior using csh
~>csh -fc "ls -dc /etc/rc[2-5].d"
/etc/rc2.d /etc/rc3.d /etc/rc4.d /etc/rc5.d
I've reproduced this bug on multiple debian machines running:
tcsh 6.21.00 (Astron) 2019-05-08 (x86_64-unknown-linux) options
wide,nls,dl,al,kan,sm,rh,nd,color,filec
The older verion gives the correct behavior:
tcsh 6.20.00 (Astron) 2016-11-24 (x86_64-unknown-linux) options
wide,nls,dl,al,kan,sm,rh,nd,color,filec
-- System Information:
Debian Release: 11.10
APT prefers oldstable-debug
APT policy: (500, 'oldstable-debug'), (500, 'oldstable')
Architecture: amd64 (x86_64)
Kernel: Linux 5.10.0-30-amd64 (SMP w/40 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE,
TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages tcsh depends on:
ii libc6 2.31-13+deb11u10
ii libcrypt1 1:4.4.18-4
ii libtinfo6 6.2+20201114-2+deb11u2
tcsh recommends no packages.
tcsh suggests no packages.
-- Configuration Files:
/etc/csh.cshrc changed:
exit
if ($?tcsh && $?prompt) then
bindkey "\e[1~" beginning-of-line # Home
bindkey "\e[7~" beginning-of-line # Home rxvt
bindkey "\e[2~" overwrite-mode # Ins
bindkey "\e[3~" delete-char # Delete
bindkey "\e[4~" end-of-line # End
bindkey "\e[8~" end-of-line # End rxvt
set autoexpand
set autolist
set prompt = "%U%m%u:%B%~%b%# "
endif
set dir=/etc/csh/cshrc.d
if (-e $dir && `/bin/ls $dir` != "") then
foreach FILE (`/bin/ls $dir/*`)
source $FILE;
end;
endif
-- no debconf information