Я повинен змінити каталог на "foo", коли він стане доступним. Як це зробити? Поки що я придумав:
cd `ls | grep foo`
Але проблема в тому, що якщо немає відповідності grep, каталог змінюється на домашній каталог.
Іншим підходом я користувався:
ls -1 | grep foo | xargs -r cd
У цьому прикладі -r дбає про те, щоб не запустити команду, якщо немає відповідності. Але вона не працює, оскільки команда cd - це вбудована оболонка, а не виконується. Або щось подібне ..
[редагувати] Дякую за відповіді. Якщо можливо, ви можете також сказати, як якось поєднати згадану функціональність навколо grep, щоб я міг використовувати розширений regexp?