mac pidiendo contraseña después de cd en terminal

3

Recientemente, mi Mac comenzó a pedirme una contraseña después de usar cden Terminal.app (no he probado otras aplicaciones de término).

aunque parezca extraño, si presiono ctrl, Ccuando se hace la contraseña, la pregunta desaparece y me quedo en el directorio al que estaba cd(como era de esperar).

¿Cómo puedo saber para qué se necesita esta contraseña o cómo detenerla? Estoy usandozsh

EDITAR:

El terminal solicita una contraseña en momentos aleatorios, para directorios aleatorios. No tengo ni idea de ningún patrón. La salida es básicamente:

cd ~/Downloads
Password:

Creo que esto comenzó a suceder después de instalar JewelryBox.app

romeovs
fuente
2
Algunos detalles más probablemente serían útiles aquí. ¿Ocurre con todos los cdcomandos o solo para directorios específicos? Si es el segundo, ¿alguna idea de lo que tienen en común y / o qué los distingue de los demás? También publicar una captura de pantalla (o una copia de texto) del mensaje (y la cdparte) daría algunas pistas.
Nohillside
Se puede escribir alguna salida en la terminal como whence cd, which cd, echo $SHELL. Parece que este comando es diferente al incorporado
Eir Nym
echo $SHELLda /bin/zshy whichdice cd: shell built-in command. whence cdsólo dice cd. Recuerdo que hay zshalgo que puedes habilitar para ver todos los comandos ejecutados cuando haces algo, xseto algo así, pero no puedo recordar exactamente qué.
romeovs
2
set -xeso fue todo. cd-ing a un directorio produce muchas cosas, incluidas muchas referencias a rvm, rubíes, ... así que creo que el culpable debe ser JewelryBox o cualquiera de sus rvms instalados.
romeovs
@romeovs: considere agregar una respuesta a su pregunta a continuación para ayudar a quienes encuentren esta pregunta en el futuro.
zwerdlds

Respuestas:

2

Puede ejecutar set -xpara que zsh imprima un rastro de cada comando que ejecuta. Cuando una función ejecuta un comando, se imprime el nombre de la función. Ejecute set +xpara detener la impresión de trazas.

Si algo sucede cuando usa el cdcomando, puede ser porque se trata de un alias o función. Consulte con type cd.

Zsh tiene una función incorporada para enganchar al cdcomando, por lo que rara vez se usan envoltorios alrededor del comando incorporado. Si la función chpwdexiste, zsh la ejecuta inmediatamente después de cambiar el directorio. Comprueba qué hace la chpwdfunción which chpwd.

También hay ganchos que se ejecutan antes y después de cada comando: las funciones preexecy precmd. Además, todos estos ganchos tienen una versión de matriz, que es una matriz de nombres de funciones. Verifique estos arreglos con echo $chpwd_functions, y si hay una función, mire su código.

Gilles
fuente