The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"bash Solaris перенос комманд"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (Shell скрипты)
Изначальное сообщение [ Отслеживать ]

"bash Solaris перенос комманд"  +/
Сообщение от DiJey email(ok) on 21-Авг-14, 10:47 
Подскажите кто в курсе, как переносить комманды что бы не писать в строчку.
У меня следюущая констркуция
grep пареметр1 ${in} | grep параметр2 | grep параметр3 > ${OUT}

Нужно:
grep пареметр1 ${in} | \
grep параметр2 | \
grep параметр3 > ${OUT}

В linux такая конструкция рабоатет, в Solaris нет.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "bash Solaris перенос комманд"  +/
Сообщение от Andrey Mitrofanov on 21-Авг-14, 11:15 
> grep параметр2 | \
> В linux такая конструкция рабоатет, в Solaris нет.

А должно бы, судя по https://www.opennet.ru/man.shtml?topic=sh&category=1
в районе ""If a backslash is used to escape a newline character"".

Продолжение осмотра: версия S., реализации и версии sh, его(sh) man-а и т.д.

Ну, или сделать быстро -- #!/bin/bash или #!/usr/bin/env bash --.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "bash Solaris перенос комманд"  +/
Сообщение от zd3n (ok) on 21-Авг-14, 11:22 
У меня в Solaris работает.

$ bash --version
GNU bash, version 3.00.16(1)-release (sparc-sun-solaris2.10)

$ cat /etc/release
                   Oracle Solaris 10 9/10 s10s_u9wos_14a SPARC
     Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
                            Assembled 11 August 2010

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "bash Solaris перенос комманд"  +/
Сообщение от DiJey email(ok) on 21-Авг-14, 12:12 
Нет не пашет..., в чем интересно может быть дело...

-bash-3.2# bash -version
GNU bash, version 3.2.51(1)-release (sparc-sun-solaris2.10)
Copyright (C) 2007 Free Software Foundation, Inc.
-bash-3.2# cat temp
User Management:solaris:cmd:::/usr/sbin/groupadd:uid=0
User Management:solaris:cmd:::/usr/sbin/groupdel:uid=0
User Management:solaris:cmd:::/usr/sbin/groupmod:uid=0
User Management:solaris:cmd:::/usr/sbin/roleadd:uid=0
User Management:solaris:cmd:::/usr/sbin/roledel:uid=0
User Management:solaris:cmd:::/usr/sbin/rolemod:uid=0
User Management:solaris:cmd:::/usr/sbin/useradd:uid=0
User Management:solaris:cmd:::/usr/sbin/userdel:uid=0
User Management:solaris:cmd:::/usr/sbin/usermod:uid=0
User Management:suser:cmd:::/usr/sbin/grpck:euid=0
User Management:suser:cmd:::/usr/sbin/pwck:euid=0
-bash-3.2# cat t1.sh
#!/bin/bash
grep -v "User Management:solaris:cmd:::/usr/sbin/groupadd:uid=0" ./temp |\
grep -v "User Management:solaris:cmd:::/usr/sbin/groupdel:uid=0" ./temp > ./temp1
-bash-3.2# ls
t1.sh  temp
-bash-3.2# bash t1.sh
-bash-3.2# cat ./temp1
User Management:solaris:cmd:::/usr/sbin/groupadd:uid=0
User Management:solaris:cmd:::/usr/sbin/groupmod:uid=0
User Management:solaris:cmd:::/usr/sbin/roleadd:uid=0
User Management:solaris:cmd:::/usr/sbin/roledel:uid=0
User Management:solaris:cmd:::/usr/sbin/rolemod:uid=0
User Management:solaris:cmd:::/usr/sbin/useradd:uid=0
User Management:solaris:cmd:::/usr/sbin/userdel:uid=0
User Management:solaris:cmd:::/usr/sbin/usermod:uid=0
User Management:suser:cmd:::/usr/sbin/grpck:euid=0
User Management:suser:cmd:::/usr/sbin/pwck:euid=0
-bash-3.2# wc temp
      11      22     590 temp
-bash-3.2# wc temp1
      10      20     535 temp1
-bash-3.2#

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "bash Solaris перенос комманд"  +/
Сообщение от DiJey email(ok) on 21-Авг-14, 12:27 

-bash-3.2# cat t1.sh
#!/bin/bash
grep -v "User Management:solaris:cmd:::/usr/sbin/groupadd:uid=0" ./temp |\
grep -v "User Management:solaris:cmd:::/usr/sbin/groupdel:uid=0" > ./temp1

-bash-3.2# bash t1.sh
t1.sh: line 2: \: command not found

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

6. "bash Solaris перенос комманд"  +/
Сообщение от Andrey Mitrofanov on 21-Авг-14, 13:59 
>  -bash-3.2# cat t1.sh
>  #!/bin/bash
>  grep -v "User Management:solaris:cmd:::/usr/sbin/groupadd:uid=0" ./temp |\
>  grep -v "User Management:solaris:cmd:::/usr/sbin/groupdel:uid=0" > ./temp1

Со второым ./temp, вижу, разобрался. Может и с регулярными выражениями пора?

> -bash-3.2# bash t1.sh
> t1.sh: line 2: \: command not found

\r\n в конце строки, вместо положенного \n после редактирования виндовым ноутпадом??

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

8. "bash Solaris перенос комманд"  +/
Сообщение от zd3n (ok) on 21-Авг-14, 14:01 
Вот что у меня вышло:

bash-3.00$ cat temp
User Management:solaris:cmd:::/usr/sbin/groupadd:uid=0
User Management:solaris:cmd:::/usr/sbin/groupdel:uid=0
User Management:solaris:cmd:::/usr/sbin/groupmod:uid=0
User Management:solaris:cmd:::/usr/sbin/roleadd:uid=0
User Management:solaris:cmd:::/usr/sbin/roledel:uid=0
User Management:solaris:cmd:::/usr/sbin/rolemod:uid=0
User Management:solaris:cmd:::/usr/sbin/useradd:uid=0
User Management:solaris:cmd:::/usr/sbin/userdel:uid=0
User Management:solaris:cmd:::/usr/sbin/usermod:uid=0
User Management:suser:cmd:::/usr/sbin/grpck:euid=0
User Management:suser:cmd:::/usr/sbin/pwck:euid=0
bash-3.00$ cat t1.sh
#!/bin/bash
grep -v "User Management:solaris:cmd:::/usr/sbin/groupadd:uid=0" ./temp |\
grep -v "User Management:solaris:cmd:::/usr/sbin/groupdel:uid=0"  > ./temp1
bash-3.00$ bash t1.sh
bash-3.00$ cat temp1
User Management:solaris:cmd:::/usr/sbin/groupmod:uid=0
User Management:solaris:cmd:::/usr/sbin/roleadd:uid=0
User Management:solaris:cmd:::/usr/sbin/roledel:uid=0
User Management:solaris:cmd:::/usr/sbin/rolemod:uid=0
User Management:solaris:cmd:::/usr/sbin/useradd:uid=0
User Management:solaris:cmd:::/usr/sbin/userdel:uid=0
User Management:solaris:cmd:::/usr/sbin/usermod:uid=0
User Management:suser:cmd:::/usr/sbin/grpck:euid=0
User Management:suser:cmd:::/usr/sbin/pwck:euid=0
bash-3.00$ wc temp
      11      22     590 temp
bash-3.00$ wc temp1
       9      18     480 temp1
bash-3.00$

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

5. "bash Solaris перенос комманд"  +/
Сообщение от zd3n (ok) on 21-Авг-14, 13:56 
>[оверквотинг удален]
> User Management:solaris:cmd:::/usr/sbin/usermod:uid=0
> User Management:suser:cmd:::/usr/sbin/grpck:euid=0
> User Management:suser:cmd:::/usr/sbin/pwck:euid=0
> -bash-3.2# wc temp
>       11      
> 22     590 temp
> -bash-3.2# wc temp1
>       10      
> 20     535 temp1
> -bash-3.2#

У меня на solaris отработало точно также...

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

7. "bash Solaris перенос комманд"  +/
Сообщение от Andrey Mitrofanov on 21-Авг-14, 14:00 
> У меня на solaris отработало точно также...

Второй :) "./temp". groupadd-ы пролезают.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

9. "bash Solaris перенос комманд"  +/
Сообщение от DiJey email(ok) on 22-Авг-14, 09:55 
Похоже что-то отключено, буду разбиратся, спасибо за содействие.
Если что интересное увижу отпишу. У меня в скриптах еще echo  не на всех серверах отрабатывает. Буду сравнивать с макетом.


Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру