Fish-shell: Как я могу проверить строку в другой строке?

Созданный на 19 янв. 2013  ·  4Комментарии  ·  Источник: fish-shell/fish-shell

скажем, я хочу, чтобы если "Дарвин или Linux" в эхо (uname -a), я пробовал содержит, это не работает, потому что содержит проверку, присутствует ли слово в списке.

есть простой способ сделать это?

благодаря !

question

Самый полезный комментарий

Другой способ был бы

switch (uname -a)
    case "*Darwin*"
        echo darwin stuff
    case "*Linux*"
        echo linux stuf
end

Но я думаю, что на этот вопрос есть ответ, поэтому я закрою его.

Все 4 Комментарий

switch (uname -a | cut -d ' ' -f 1)
  case 'Darwin'
    echo 'do stuff'
  case 'Linux'
    echo 'do other stuff'
end

Вы также можете использовать grep , особенно если вы хотите проделать то же действие для любого из них.

if uname -a | grep 'Darwin\|Linux' >/dev/null
  echo 'do stuff'
end

спасибо терлар.

привет терлар, я думаю, что ваша версия grep лучше, потому что я могу определить, если это ubuntu, тогда я могу определить некоторые функции, работающие только в Ubuntu. это более конкретно.

Спасибо еще раз .

Другой способ был бы

switch (uname -a)
    case "*Darwin*"
        echo darwin stuff
    case "*Linux*"
        echo linux stuf
end

Но я думаю, что на этот вопрос есть ответ, поэтому я закрою его.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

ismay picture ismay  ·  3Комментарии

andrewhowdencom picture andrewhowdencom  ·  3Комментарии

krader1961 picture krader1961  ·  3Комментарии

spacekookie picture spacekookie  ·  3Комментарии

olivergondza picture olivergondza  ·  3Комментарии