The UNIX and Linux Forums  
Olá e boas-vindas de Estados Unidos para o UNIX e Linux Forum! Obrigado por visitar e fazer parte da nossa comunidade global.

Go Back   O UNIX e Linux Forum > Top Fóruns > Programação Shell Script e
.
google unix.com



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
Bad número mágico em / dev/md0 ravinandan UNIX & avançada para usuários experientes 0 08-17-2007 07:56
LVM número mágico 0x4D48 ghimanshu Filesystems, Discos e Memória 2 07-18-2007 08:27
Bad Magic Number wesweshahaha Filesystems, Discos e Memória 0 05-18-2006 01:28
Bad número mágico batosai Sun Solaris 1 04-22-2006 11:29
mau número mágico rédea UNIX & avançada para usuários experientes 5 01-05-2005 11:27

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Avaliação: Thread Rating: 1 votes, 5.00 average. Display Modes
  #1 (permalink)  
Old 07-08-2005
vino's Avatar
vino vino is offline Forum Staff  
Apoiante (in vino veritas)
  
 

Join Date: Feb 2005
Local: Bangalore, Índia
Mensagens: 2.796
reservatório com um número mágico --

Em um dos nossos internos scripts (unix.run), tenho notado que os seguintes cabana.

Código:
#!/bin/sh -
for i in test1 test2 test3 ; do
.
.
.
Alguma idéia de que o -- no número mágico defende?

E qual o impacto que tem sobre o roteiro?


Continuando sobre o mesmo script, tenho o seguinte para unix.run

Código:
ls -l unix.run
-rw-------    1 XXXXXX g900          187 Jul  8 04:29 unix.run
Se eu faço um

Código:
./unix.run
ele diz que "Permissão negada"

Mas se eu executá-lo como,

Código:
sh unix.run
ela funciona bem.

Porque a diferença de comportamento entre . / unix.run e sh unix.run?

Caso não é sempre dizer "autorizações negado" em ambos os casos?

Todas as entradas / ponteiros sobre esses dois pontos, muito apreciada.

Obrigado,
Vino
  #2 (permalink)  
Old 07-08-2005
blowtorch's Avatar
maçarico blowtorch is offline Forum Advisor  
Adepto
  
 

Join Data: dezembro 2004
Local: Singapura
Posts: 2.350
Em resposta à primeira questão, trata-se de desativar a opção de transformação por sh. Isto significa que se você passar quaisquer argumentos para o script, sh não irá tentar interpretá-las em si, mas vai tratá-los como argumentos.

Para citar o BSD sh manual,
Citação:
Originally Posted by BSD sh manual
Um ``--'' ou planície ``-'' irá parar e opção de transformação será
vigor as restantes palavras na linha de comando a ser tratada como argumentos.
No caso de a sua segunda questão, o script não executar como '. / Unix.run' porque está a tentar "executar" um arquivo que não é executável (x bits não estão definidos). Com 'sh. / Unix.run «o binário' / usr / bin / sh 'é executado e unix.run o script que lhe é passada como argumentos.

Felicidades!

PS BTW, o número mágico só compreende os primeiros 2 ou 3 (ambos são legais) bytes no arquivo. O resto da linha diz que o kernel que está a ser utilizada para interpretar o resto do arquivo.

Última edição por maçarico; em 07/08/2005 10:47.. Motivo: um aparte sobre o número mágico
  #3 (permalink)  
Old 07-08-2005
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Join Date: Aug 2001
Localização: Ashburn, Virginia
Mensagens: 9.111
Citação:
Originally Posted by maçarico
PS BTW, o número mágico só compreende os primeiros 2 ou 3 (ambos são legais) bytes no arquivo. O resto da linha diz que o kernel que está a ser utilizada para interpretar o resto do arquivo.
Qual SO? HP-UX magia página man diz:
Código:
struct magic_number { 
    unsigned short    system_id; 
    unsigned short    file_type; 
}; 
typedef      struct    magic_number MAGIC;
  #4 (permalink)  
Old 07-08-2005
blowtorch's Avatar
maçarico blowtorch is offline Forum Advisor  
Adepto
  
 

Join Data: dezembro 2004
Local: Singapura
Posts: 2.350
Citação:
Originally Posted by maçarico
PS BTW, o número mágico só compreende os primeiros 2 ou 3 (ambos são legais) bytes no arquivo. O resto da linha diz que o kernel que está a ser utilizada para interpretar o resto do arquivo.
Opa! Thats 3 ou 4! A sua existência na resposta por Perderabo no FAQ.

Obrigado por apontar que a Perderabo.
Closed Thread

Marcadores

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 05:50.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0