У вас есть простая логическая ошибка: пока вы получаете out_fd_present на true , когда вы обнаруживаете > или >> , вы никогда не сбрасываете его на false (например, в верхней части цикла).
Хотя я предполагаю, что ваша «оболочка» - это игрушечная оболочка, я должен упомянуть, что у вас также есть много других проблем. Например, у вас утечка out_fd в родительском процессе и save_out (для чего это?) В дочернем процессе. У вас есть ошибка, при которой вы можете вызвать strcmp для строки NULL . И еще один для chdir . Ваш синтаксис и функциональность также отличаются от того, что «должна» делать оболочка (положение операторов перенаправления, umask, интервалы и токенизация и т. Д.). Не говоря уже о непоследовательном стиле (использовались и уродливый верблюжий футляр, и футляр для змеи). Чтобы реализовать оболочку, даже игрушечную, вам, вероятно, сначала следует начать с хорошего дизайна.
. Я создаю сценарий с использованием BASH, который извлекает временную метку из файла (~ / logs / Server_Info.log). В частности, я хочу вытащить цифру часа из метки времени и записать ее в переменную. Это ...
Я довольно плодотворно использовал псевдонимы, особенно со всеми различными командами git, их порядком и взаимозависимостями и т. Д. Итак, я создал несколько более сложных псевдонимов ...
Я запускал эту единственную строку для: for i in `pwgen -yB -N 8 1`; эхо "$ i"; done Тогда вывод будет:.
Descargas
Documentos
Escritorio
Imágenes
Música
NetBeansProjects
Плантильи
public_html
...
Следующий сценарий не ведет себя, как я ожидал бы. Добавление пробелов вокруг '=' в условном выражении заставило его работать, как я хотел, но это получило меня взгляды, что оно на самом деле делает внутри...
Мне трудно понять перенаправления, как мы можем использовать exec <> в качестве команды Linux, что это значит. Можете ли вы привести пример и объяснить?
Я часто заканчиваю тем, что дал сложные команды по ssh; эти команды включают передачу по каналу к awk или одной строке жемчуга, и в результате содержат одинарные кавычки и $. Я ни не смог выяснить твердое...
Я хотел бы иметь сценарий, который бы добавлял каждую строку стандартного ввода с информацией о том, сколько времени потребовалось для ее генерации.
В основном для ввода: foo
бар
baz Я бы хотел получить 0 foo
10 бар
5 baz ...