![]() |
|
|
google unix.com
|
|||||||
| Fóruns | Registar | Fórum Regimento | Ligações | Álbuns | FAQ | Lista deputados | Calendário | Pesquisa | Today's Posts | Mark Forums Read |
| Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui. |
Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
|
||||
| Fio | Thread Starter | Fórum | Respostas | Última postagem |
| Como faço para mudar para super usuário, em seguida, voltar ao normal dos usuários, utilizando shell script? | wrapster | Programação Shell Script e | 3 | 06-04-2008 08:11 |
| su (mudar para outro usuário) | bjagadeesh | Programação Shell Script e | 1 | 05-20-2008 11:27 |
| [Ajuda] Dê privilégio de um usuário ordinário | ibmer414 | AIX | 1 | 04-08-2008 03:56 |
| comutação entre raiz e um usuário normal | melanie_pfefer | Programação Shell Script e | 3 | 04-21-2007 08:02 |
| Excepto usuário root. Utilizador normal não é capaz de criar arquivos | mallesh | UNIX & avançada para usuários experientes | 1 | 06-22-2005 01:18 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
comutação de usuário root para usuário ordinário
Bom dia Pessoal!
Atualmente, estou fazendo um script em AIX, o script será executado um trabalho SAS, o proprietário do script é a raiz, mas a SAS empregos não pode ser executado pela raiz, como ele deve ser executado por um usuário 'sasia'. Mas, dentro do script, cria um logfile raiz, para o que eu preciso é só para a su sasia para a determinado trabalho e depois voltar para o usuário original. o script está escrito abaixo. Pls. ajuda #! / bin / sh função logrc ( if [-f $ drv / $ batchname ". err"] então cat $ drv / $ batchname. "errar" | grep 0 RCODE \u003d $? fi echo $ passo $ RCODE dtx $ $ $ bpsw desc>> $ drv / $ batchname. "log" if [$ bpsw! \u003d 1] então if [$ RCODE! \u003d 0] então echo>> $ drv / $ batchname. "log" echo "Falha no Trabalho" $ passo "." >> $ Drv / $ batchname. "Log" echo "procedimento de recuperação:">> $ drv / $ batchname. "log" if [-f $ rdrv / $ batchname. "rpm"] então cat $ rdrv / $ batchname. "rpm">> $ drv / $ batchname. "log" diferente echo "No procedimento de recuperação." >> $ Drv / $ batchname. "Log" fi saída $ RCODE fi fi return $ RCODE ) função step00 ( passo \u003d step00 desc \u003d "Excluir arquivos Exisitng gatilho" cd / sasprog / dispara if [-f $ st] então rm $ st echo $ st "apagado" diferente echo $ st "não existe" fi if [-f $ ut] então $ rm ut echo $ ut "apagado" diferente echo $ ut "não existe" fi echo data RCODE \u003d $? logrc ) função step01 ( passo \u003d step01 if [ "$ rrstep!" \u003d ""] & & [ "$ rrstep!" \u003d "$ passo"] então echo $ passo pulado return 0 fi desc \u003d "Call SAS trabalho" Quoteme () ( if [$ #-gt 1]; então quoteme \u003d "\" $ * \ "" diferente quoteme \u003d $ 1 fi ) cd `cat / sasconfig / BPICRMS / jobpath / pré` cmd \u003d "/ sas9/SAS913/sas" por arg em "SET_RUN_CONTROL_TABLE_FOR_ALAS.sas" fazer Quoteme $ arg tmp \u003d "$ quoteme" cmd \u003d "$ cmd $ tmp" feito cmd $ RCODE \u003d $? logrc ) # principal script drv \u003d / sasprog / joblog rdrv \u003d / sasprog/Lev1/rdrv batchname \u003d SET_RUN_CONTROL_TABLE_FOR_ALAS dtx \u003d `date + '% y% m% d'` "" `date + '% H% M% S'` rrstep \u003d "" bpsw \u003d 0 ut \u003d U_SET_RUN_CONTROL_TABLE_FOR_ALAS.txt st \u003d S_SET_RUN_CONTROL_TABLE_FOR_ALAS.txt if [ "$ 1"! \u003d ""] & & [ "$ 1"! \u003d "step00"] então echo Job Reiniciou em US $ 1 $ dtx>> $ drv / $ batchname. "log" rrstep \u003d $ 1 diferente echo $ Job começar dtx> $ drv / $ batchname. "log" rrstep \u003d "" fi step00 step01 saída $ RCODE o que eu preciso é o de rever o functyion 01 para que o usuário mude para sasia, execute o sasjob e depois voltar como root. Graças, em avançadas para o ajudar. Obrigado # fim do script |
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|