LINUX.ORG.RU

Избранные сообщения mky

В питон завозят паттерн-матчинг

Форум — Development

Кто бы мог подумать, ещё лет 5 назад, что питон получит типизацию и функциональщину. Но нет:

def is_tuple(node: Node) -> bool:
    match node:
        case Node(children=[LParen(), RParen()]):
            return True
        case Node(children=[Leaf(value="("), Node(), Leaf(value=")")]):
            return True
        case _:
            return False

История показывает, что участь любого популярного ЯП - С++ ужас.

https://www.python.org/dev/peps/pep-0622/

 

RazrFalcon
()

2 ip и 2 шлюза на 1 машине

Форум — Admin

Подскажите, возможно ли поставить 2 ip и 2 шлюза (с разных диапазонов) на 1 интерфейс. rhel6, 2.6.32 kernel

xZergx
()

wildcard, ksh, прогулка по файлам, aix

Форум — General

Чойта я туплю отчаянно. AIX (ох, сейчас камней будет). ksh. Хочу в скрипте сделать что-то с каждым файлом *.dat в каталоге.

Вариант 1:

for f in /dir/*.dat; do

работает хорошо, если файлы есть. Но если нет - тело цикла вызывается один раз с параметром /dir/*.dat. Приходится внутри делать какое-нибудь глупое if [ -f $f ]

Вариант 2:

ls /dir/*.dat | while read $f; do

тоже работает, но, если файлов нет, ls ругается. Приходится перенаправлять 2>/dev/null, что не очень красиво

Вариант 3:

find /dir -name '*.dat' | while read $f; do

не совсем то, ибо лезет вглубь, а я не хочу (тамошний find не знает про maxdepth).

Как кошерно? Я понимаю, что надо использовать нормальный linux, bash, find и т.д. Но условия в задачке именно такие.

 ,

svu
()