Re: [linux-programming] Script bisa dijalankan sekali.

2012-08-29 Terurut Topik MYA Putra
On Tue, Aug 28, 2012 at 08:33:16PM -0700, Eko Prasetya wrote:
> Date: Tue, 28 Aug 2012 20:33:16 -0700
> From: Eko Prasetya 
> 
> Gunakan diff, dan check return error-nya:
> 
> #!/bin/bash
> 
> diff a.txt b.txt > /dev/null
> if [ $? != 0 ]; then
> echo "not the same";
> else
> echo "the same";
> fi
> 
Sudah bisa. Saya contoh yang Anda kasih.

#!/bin/bash

diff resolv.aha resolv.conf > /dev/null
  if [ $? != 0 ]; then
 cp resolv.aha resolv.conf;
 cp wvdial.aha wvdial.conf;
 usb_modeswitch -vpVP -c usb_modeswitch.conf;
   else
 echo "";
  fi;

TNX

Salam,

Putra Oesman
-- 
Linux Registered User #146631
-

-- 
Berhenti langganan: linux-programming-unsubscr...@linux.or.id
Arsip dan info: http://linux.or.id/milis



Re: [linux-programming] Script bisa dijalankan sekali.

2012-08-28 Terurut Topik MYA Putra
On Tue, Aug 28, 2012 at 11:21:32AM -0700, Eko Prasetya wrote:
> Date: Tue, 28 Aug 2012 11:21:32 -0700
> From: Eko Prasetya 
> 
> Untuk case ini, kenapa tidak di-diff saja, antara resolv.aha dan resolv.conf ?
> Jika sama, keluar, jika tidak, continue.
> 
> 2012/8/28 Donny Kurnia 
> >
> >
> > Bisa pakai teknik lock sederhana menggunakan file.
> >
> > Script pertama2 cek keberadaan sebuah file, jika file lock tersebut
> > tidak ada, lanjutkan eksekusi. Di akhir eksekusi buat file lock yang
> 
> -- 
> Berhenti langganan: linux-programming-unsubscr...@linux.or.id
> Arsip dan info: http://linux.or.id/milis
>
Terima kasih rekan semua atas responsnya. Ini saya baru buat dengan
membandingkan dua file, namun apakah statmennya ini benar?:

foreach file(resolv.*)
  if ($file(resolv.aha) == ($file(resolv.conf) then
  exit(1)
  else if ($file(resolv.aha) != ($file(resolv.conf)
cp resolv.aha resolv.conf
  endif
end

Tapi tidak jalan. Mungkin sintax atau strukturnya salah. CMIIW

Salam,

Putra Oesman
-- 
Linux Registered User #146631
-

-- 
Berhenti langganan: linux-programming-unsubscr...@linux.or.id
Arsip dan info: http://linux.or.id/milis



Re: [linux-programming] Script bisa dijalankan sekali.

2012-08-28 Terurut Topik MYA Putra
On Tue, Aug 28, 2012 at 07:46:16PM +0700, Itoshiki Rin wrote:
> Date: Tue, 28 Aug 2012 19:46:16 +0700
> From: Itoshiki Rin 
> User-Agent: Mutt/1.5.21 (2010-09-15)
> 
> On Tue, Aug 28, 2012 at 07:16:06PM +0800, MYA Putra  
> wrote:
> > Rekan Programmer,
> > 
> > Bagaimana caranya membuat script yang hanya bisa dijalankan
> > sekali saja? Misal script *aha yang isinya:
> > 
> > cp resolv.aha resolv.conf
> > cp wvdial.aha wvdial.conf
> > usb_modeswitch -vpVP -c usb_modeswitch.conf
> > 
> > Demikian TIA.
> > 
> > Salam,
> > 
> > Putra Oesman
>  
> Di skrip-nya sendiri dikasih perintah buat chmod -x
> 
Mungkin pertanyaannya salah. Maksudnya Isi scriptnya yang tidak bisa
dieksekusi, scriptnya tetap bisa dieksekusi. Jadi kalau diulang script
tersebut tidak mengeksekusi apa-apa.

Salam,

Putra Oesman 
-- 
Linux Registered User #146631
-

-- 
Berhenti langganan: linux-programming-unsubscr...@linux.or.id
Arsip dan info: http://linux.or.id/milis



[linux-programming] Script bisa dijalankan sekali.

2012-08-28 Terurut Topik MYA Putra
Rekan Programmer,

Bagaimana caranya membuat script yang hanya bisa dijalankan
sekali saja? Misal script *aha yang isinya:

cp resolv.aha resolv.conf
cp wvdial.aha wvdial.conf
usb_modeswitch -vpVP -c usb_modeswitch.conf

Demikian TIA.

Salam,

Putra Oesman
-- 
Linux Registered User #146631
-

-- 
Berhenti langganan: linux-programming-unsubscr...@linux.or.id
Arsip dan info: http://linux.or.id/milis



[linux-programming] Error link free Pascal lncursesw

2011-07-20 Terurut Topik MYA Putra
Rekan programmer,

Saya biasanya memakai Free Pascal di Slackware dan tidak mengalami masalah.
Namun setelah memakai Free Pascal di Fedora 15 masalah timbul ketika
compile file memakai ncurses. Ada error untuk link ncursesw:

$ fpc data_alamat.pas
Free Pascal Compiler version 2.4.2 [2011/02/09] for i386
Copyright (c) 1993-2010 by Florian Klaempfl
Target OS: Linux for i386
Compiling data_alamat.pas
Linking data_alamat
/usr/bin/ld: warning: link.res contains output sections; did you forget -T?
/usr/bin/ld: cannot find -lncursesw
/usr/bin/ld: cannot find -lpanelw
/usr/bin/ld: cannot find -lmenuw
data_alamat.pas(384,1) Error: Error while linking
data_alamat.pas(384,1) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/bin/ppc386 returned an error exitcode (normal if you did not 
specify a source file to be compiled)

Sudah google tidak mendapat informasi yang jelas. Ada saran untuk D/L 
ncursesw-1.2.3.4.gem dan primary.xml.gz
tapi penggunaanya bagaimana tidak dejelaskan.

Adakah rekan yang bisa kasih pencerahan? TIA

Salam,

Putra
-- 
Linux Registered User #146631
-

-- 
Berhenti langganan: linux-programming-unsubscr...@linux.or.id
Arsip dan info: http://linux.or.id/milis



[linux-programming] modifikasi listing program DOS ke Linux

2009-11-28 Terurut Topik MYA Putra
Rekan,

Saya memodifikasi program C yang jalan di DOS untuk bisa jalan di Linux.
Listing program hasil modifikasi bisa di compile dan file executable terbentuk 
namun ketika dijalankan terjadi: Segmentation fault.

Mungkin ada yang bisa kasih petunjuk bagaimana memodifikasi listing program 
tersebut. Ini saya sertakan listing hasil modifikasinya. Program untuk 
memasukkan string dan format tanggal. 


/* Listing program GETP.C
   27 Desember 1994
modif. for Linux 29-11-2009
   -*/
#include
#include

//typedef enum boolean {FALSE,TRUE};

int get_str(int kol,int bar,char *string,
int maxchar,int wr,int num,int up)
{
//  WINDOW *win;
  int x,y;
  int pos;
  int betul;
  pos=0;
  betul=0;
  union inkey
  {
char ch[2];
int i;
  }c;

//  textattr(wr);
  move(kol,bar);
//  x=wherex(); y=wherey();
  getyx(stdscr,y,x);
  move(x,y);
  for(;;)
  {
c.i=getch();
if(c.ch[0])
{
 switch(c.ch[0])
  {
case '\r': if(true==1) *string='\0';
   return 1;
case 8   : if(pos<=0)
break;
   else
   {
 --x;
 string--;
 pos--;
 move(x,y);
 putchar(' ');
   }
break;
case 27  : return 0;
default  : if(pos==0) betul=1;
   if(pos>=maxchar)
   break;
   if(num==1) //string
  {
   if(!isascii(c.ch[0])) break;
  }
   if(num==2) //number
  {
  if(!isdigit(c.ch[0]) &&
 c.ch[0]!='.' && c.ch[0]!=' ')
  break;
  }
   if(up==TRUE) //upcase
   { if(c.ch[0]>=97 && c.ch[0]<=122)
  c.ch[0]=c.ch[0]-32;
   }
   *string=c.ch[0];
   string++;
   pos++;
   x++;
   printf("%c",c.ch[0]);
   break;
  }
}
else
{
  switch(c.ch[1])
  {
   case 75 : if(pos<=0)
break;
   else
   {
 --x;
 string--;
 pos--;
   }
  break;

  case 77 : if(pos>=maxchar-1)
break;
   else
   {
 ++x;
 string++;
 pos++;
   }
  break;
  case 72 : if(true==1) *string='\0';
return 1;
  case 80 : if(true==1) *string='\0';
return 1;
  }
}
move(x,y);
  }
}

int get_tgl(int kol,int bar,char *string,int wr)
{
//  WINDOW *win1;
  int x,y;
  int pos=0;

  union inkey
  {
char ch[2];
int i;
  }c;

//  textattr(wr);
  move(kol,bar);
//  x=wherex(); y=wherey();
  getyx(stdscr,y,x);
  move(x,y);
  for(;;)
  {
c.i=getch();
if(c.ch[0])
{
  switch(c.ch[0])
  {
case '\r': *string='\0';
   return 1;
case 8   : if(pos<=0)
break;
   if(pos==6){pos--;--x;}
   if(pos==3){pos--;--x;}
   {
 --x;
 string--;
 pos--;
 move(x,y);
 putchar(' ');
   }
break;

case 27  : return 0;
default  : if(pos>=10)
   break;
   if(!isdigit(c.ch[0]))
   break;
   if(pos==1) {pos++;x++;}
   if(pos==4) {pos++;x++;}
   *string=c.ch[0];
   string++;
   pos++;
   x++;

   printf("%c",c.ch[0]);
   break;
  }
}
else
{
  switch(c.ch[1])
  {
   case 75 : if(pos<=0)
break;
 if(pos==6){pos--;--x;}
 if(pos==3){pos--;--x;}
   {
 --x;
 string--;
 pos--;
   }
  break;

  case 77 : if(pos>=9)
break;
if(pos==1){pos++;++x;}
if(pos==4){pos++;++x;}
   {
 x++;
 string++;
 pos++;
   }
  break;
  case 72 : //*string='\0';
return 1;
  case 80 : //*string='\0';
return 1;
  }
}
move(x,y);
  }
}

main()
{
  char *kata;
  initscr();cbreak();
  get_str(10,10,kata,10,10,10,1);
  getch();
  endwin();
}

Demikian TIA,

Salam,

Putra
-- 
---  L  I  N  U  X  ---
Registered User #14663