Может ли кто-нибудь объяснить мне соответствие подстроки bash? [дубликат]

Si el usuario puede manipular la ruta del archivo de salida de datos y los datos que escribe son proporcionados por el usuario, ese usuario puede escribir cualquier cosa en cualquier ubicación a la que tenga acceso de escritura.

Hizo una restricción de ejecución a través de SSH que debería evitar que el usuario ejecute el código que puede dejar, lo cual es un buen comienzo. Si no tiene cuidado, podrían cambiar un archivo de configuración que entraría en vigor cuando se reinicie el servicio/servidor, o cambiar un script de servicio para realizar acciones adicionales cuando se ejecute mediante procesos normales.

Si no quiere que establezcan su .bashrc, ¿por qué les daría acceso de escritura a ese archivo? Asegúrese de que sus permisos estén configurados correctamente para que un usuario malintencionado no pueda causar ningún problema a través de ese script al sobrescribir nada, esencialmente solo permitiéndole escribir en la ubicación exacta en la que desea que se escriban los datos.

2
27.02.2017, 08:25
1 ответ

Вам необходимо поймите, что сопоставление подстроки Bash НЕ использует регулярные выражения. Скорее, он использует расширение подстановочных знаков в тандеме с # ## %% % для просмотра самых коротких и самых длинных совпадений и с любого направления.

В вашем конкретном случае, когда вы хотите захватить ведущие нецифры, вы можете использовать следующую уловку:

echo "${myVar%%[0-9]*}"; # delete upto the leftmost digit starting from right

вывод

my_file_

Я нашел следующий сайт: http://www.tldp.org/LDP /abs/html/parameter-substitution.html особенно удобен для всех вопросов, связанных с параметрами Bash.

2
27.01.2020, 22:19

Теги

Похожие вопросы